Сейчас мы свяжем элементы
управления с событиями. У нас всего два элемента - это две кнопки: Say
Hello и Exit.
Теперь мы будем пользоваться еще одним мастером ClassWizard, он
сильно облегчит нам работу. Зайдите в VIEW->ClassWizard,
появится такая диалоговая панель
Рассмотрим эту панель.
1) Project- здесь вы выбираете свой проект. 2)
ClassName - название класса, элементы которого вы будете связывать
с событиями, проверьте, чтобы там было установлено CHelloDlg - это
класс, который связан с главным диалоговым окном. 3) Object IDs
- это итендификаторы(названия) элементов управления, в нашем случае это
две кнопки. Первый итендификатор - это название самого класса, оно туда
включено, так как с ним связаны многие события( это такие значения,
которые возращаются Windows, при совершении какого-нибудь действия).
4) Messages - а это как раз те самые события, которые
генерирует программа. К примеру, если вы нажали на кнопку, то генерируется
событие BN_CLICKED, а если два раза - то
BN_DOUBLECLICKED. 5) Members function - это список
функций, которые вы включили, и соответствующие им события.
Теперь свяжем кнопку EXIT с событием BN_CLICKED - оно возникает
при нажатие на кнопку. Для этого щелкнем в Object IDs на
IDC_EXIT_BUTTON, справа появится события, с которыми можно связать
эту кнопку. Выбираем там BN_CLICKED. И щелкаем на кнопке Add
Function , которая находится справа. Этим нажатием вы говорите Visual
C++, что вам необходимо связать это событие с функцией. Выведетя такая
диалоговая панель, где вам предложат выбрать название функции. Оставьте
все по умолчанию и нажмите кнопку OK.
В Members
function появилась запись о том, что мы связали кнопку (c
итендификатором IDC_EXIT_BUTTON) с функцией OnExitButton.
Теперь щелкаем по кнопке Edit Code, которая находится ниже кнопки
Add Fucnction. При нажатии на эту кнопку мы переходим в режим
редактирования исходного текста. В окошке появится тест:
void CHelloDlg::OnExitButton() { // TODO: Add your control
notification handler code here
}
Коментарий //
TODO: Add your control notification handler code here говорит, что
после него можно ставлять свой код. Начало вашего кода будет
обозначаться
///Здесь начинается ваш код///
А конец вашего кода -
///Здесь заканчивается ваш код///
Теперь введем код, для этого вам надо переписать его
void CHelloDlg::OnExitButton() { // TODO: Add your control
notification handler code here ///Здесь начинается ваш код///
OnOK();
///Здесь заканчивается ваш код/// }
Вы
написали OnOK();, эта функция будет выполняться при каждом нажатии
на кнопку EXIT, и она предназначена для завершения программы.
Проверьте, чтобы в написании OnOK, OK было написано с большой буквы,
иначе, при компиляции программы, Visual C++ сообщит вам об ошибке, так
символы верхнего и нижнего регистра в VC имеют распознаются по-разному.
Итак вы связали кнопку EXIT с событием BN_CLICKED, а его
с функцией OnExitButton, которая будет выполняться при каждом
нажатии на кнопку EXIT.
Теперь свяжем кнопку Say Hello с событием BN_CLICKED. Для
этого зайдем в меню VIEW->ClassWizard. Выберем в Object
IDs IDC_SAYHELLO_BUTTON Щелкнем на BN_CLICKED в
Messages( этим вы связываете кнопку Say Hello с событием
BN_CLICKED). Нажимаем на Add function, этим вы связываете
событие BN_CLICKED с функцией. В раскрывшемся окне оставляем все
по умолчанию и нажимаем кнопку OK.
Затем нажимаем на
кнопку Edit Code, для редактирование исходного текста. И в
раскрывшемся окне пишем следующий код:
void CHelloDlg::OnSayhelloButton() { // TODO: Add your
control notification handler code here ///Здесь начинается ваш
код///
MessageBox("Say Hello");
///Здесь заканчивается ваш код/// } Функция
MessageBox("Say Hello"); вызывает окно сообщений, в
котором написан текст Say Hello, который и является параметром этой
функции. Итак, вы связали кнопки Say Hello и EXIT с
событием BN_CLICKED. При нажатии на кнопку Exit программа
завершается, а при нажатии на кнопку Say Hello выводится сообщение
"Say Hello". Теперь вам осталось построить и
выполнить программу. Нажимаем Далее...
Компиляция и запуск
программы
Оглавление ->
Страница 4 ->
|