Студопедия

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника



Клас CListBox. 1. Додавання кнопки до вікна

Читайте также:
  1. Клас CListBox

 

1. Додавання кнопки до вікна

Сьогодні ми продовжимо удосконалити нашу програму. Відкриваємо проект збережених на попередніх лекціях. File-> Open Workspace ... -> ім'я файла.dsw

Давайте тепер розташуємо в нашому вікні небудь елемент управління. Наприклад, кнопку. Для кнопок в MFC існує клас CButton. Додамо в наш віконний клас змінну типу CButton:

class CMyMainWnd: public CFrameWnd

{

public: CButton m_btn1;

...

Але наявність змінної типу CButton ще не означає, що у нас кнопка з'явиться на нашому вікні. Для того, щоб вона з'явилася, ми повинні її створити. Робимо ми це за допомогою методу Create. Метод цей належить класу CButton. Тепер питання, а де й коли ми можемо створити нашу кнопку? Давайте створимо її при створенні нашого вікна. Для досягнення цього ми повинні написати обробник для події WM_CREATE (він буде називатися OnCreate). Робимо це. Додаємо функцію в клас:

}

~ CMyMainWnd ()

{

KillTimer (1);

KillTimer (2);

}

afx_msg int OnCreate (LPCREATESTRUCT lpCreateStruct);

 

Додаємо макрос в карту повідомлень:

... ON_WM_TIMER () ON_WM_CREATE () END_MESSAGE_MAP ()

 

Додаємо реалізацію нашої функції:

int CMyMainWnd :: OnCreate (LPCREATESTRUCT lpCreateStruct)

{

m_btn1.Create ("My Button", WS_VISIBLE | WS_CHILD, CRect (0,0,130,40), this, 1200);

return 0;

}

 

Метод Create класу CButton має декілька параметрів. Перший - це напис на кнопці ("My Button"). Другий - стилі кнопки. Ми вказали, що кнопка повинна бути видима і що кнопка буде підлеглим вікном (стиль WS_CHILD). Якщо стилів кілька, то ви з'єднуєте їх за допомогою побітового або (|). Наступний параметр визначає прямокутник, який наша кнопка займе (Координати лівого верхнього і правого нижнього кутів). Тут ми створюємо безіменний об'єкт типу CRect - класу MFC для прямокутників. Передостанній параметр (this) - це покажчик на батьківське вікно. Так як наша кнопка повинна належати нашому вікну, то ми і пишемо this (так як ми знаходимося у віконному класі). І, нарешті, останній параметр - це ідентифікатор кнопки. Ми написали 1200, але можна написати будь-яке число. Важливо, щоб воно було унікальним. У кожного об'єкта повинен бути свій ідентифікатор. Ми будемо його використовувати на наступному уроці.



Запускаємо нашу програму. У вікні з'явилася кнопка:

 


Дата добавления: 2014-12-03; просмотров: 16; Нарушение авторских прав


<== предыдущая лекция | следующая лекция ==>
Afx_msg void OnLButtonDown (UINT, CPoint); | Клас CListBox
lektsii.com - Лекции.Ком - 2014-2018 год. (0.013 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты