Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как создать CButton и CEdit на MFC Dialog

6.7K
05 мая 2004 года
Santec
4 / / 05.05.2004
Пожалуйста, подскажите как создать кнопку CButton и CEdit на стандартном диалоговом окне?
В MSDN написано так:
CButton myButton1;
myButton1.Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
CRect(10,10,100,30), pParentWnd, 1);

Но я не знаю, где взять pParentWnd????????
461
05 мая 2004 года
gerard
102 / / 20.12.1999
Цитата:
Originally posted by Santec
Пожалуйста, подскажите как создать кнопку CButton и CEdit на стандартном диалоговом окне?
В MSDN написано так:
CButton myButton1;
myButton1.Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
CRect(10,10,100,30), pParentWnd, 1);

Но я не знаю, где взять pParentWnd????????


Это ссылка на ваше диалоговое окно. Если вы создаете кнопку (или другой управляющий элемент) в конструкторе окна (обычно так и делают), то можете ставить просто this (это ссылка на текущий объект класса).

Кстати, последний параметр - это идентификатор элемента, так что для разных элементов он должен отличаться.

6.7K
06 мая 2004 года
Santec
4 / / 05.05.2004
в классе CMyDlg :: CDHtmlDialog поставил кнопку и хочу запрограммировать событие которое создает несколько кнопок и текстовых полей, но не получается. СОЗДАЮ не в конструкторе.

CButton myButton1;
myButton1.Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
CRect(10,10,100,30), this, 1);
//так даже не компилируется!
2.0K
06 мая 2004 года
Androth
54 / / 07.03.2004
Цитата:
Originally posted by Santec
в классе CMyDlg :: CDHtmlDialog поставил кнопку и хочу запрограммировать событие которое создает несколько кнопок и текстовых полей, но не получается. СОЗДАЮ не в конструкторе.

CButton myButton1;
myButton1.Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
CRect(10,10,100,30), this, 1);
//так даже не компилируется!


юзай динамические переменные
т.е вот так:

CButton *myButton1;
myButton1=new CButton;
myButton1->Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
CRect(10,10,100,30), this, 1);


И когда тебе не нужны больше эти кнопки (скорее всего по завершении проги (OnDestroy)), вызывай delete myButton1;

461
07 мая 2004 года
gerard
102 / / 20.12.1999
Цитата:
Originally posted by Santec
в классе CMyDlg :: CDHtmlDialog поставил кнопку и хочу запрограммировать событие которое создает несколько кнопок и текстовых полей, но не получается. СОЗДАЮ не в конструкторе.

CButton myButton1;
myButton1.Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
CRect(10,10,100,30), this, 1);
//так даже не компилируется!



А так и не должно компилироваться, если вы создаете кнопку не в конструкторе (и не в методе класса). Ставьте вместо this указатель на объект вашего класса.

435
08 мая 2004 года
avatara
188 / / 07.07.2003
Цитата:
Originally posted by gerard


А так и не должно компилироваться, если вы создаете кнопку не в конструкторе (и не в методе класса). Ставьте вместо this указатель на объект вашего класса.



Полностью рабочий пример. Качайте!!!!

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог