Теперь свяжем кнопку Say Hello с событием BN_CLICKED. Для этого зайдем в меню VIEW->ClassWizard.
Выберем в Object IDs IDC_SAYHELLO_BUTTON
Щелкнем на BN_CLICKED в Messages (этим вы связываете кнопку Say Hello с событием BN_CLICKED).
Нажимаем на Add function, этим вы связываете событие BN_CLICKED с функцией.
В раскрывшемся окне оставляем все по умолчанию и нажимаем кнопку ОК.
Затем нажимаем на кнопку Edit Code, для редактирование исходного текста.
И в раскрывшемся окне пишем следующий код:
void CHelloDIg::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".
Теперь вам осталось построить и выполнить программу. Нажимаем Далее…
Компиляция и запуск программы
Построение и выполнение программы
Для того, чтобы выполнить программу надо ее вначале сохранить. Зайдите в меню File и там нажмите на Save Аll. Затем надо ее построить(скомпилировать).
Зайдем в меню Build->Build Hello.ехе, начнется построение программы. Если компилятор не выдал сообщение об ошибке, которые можно посмотреть в появившемся внизу окошке, то можно смело запускать программу.
Теперь вам осталось только выполнить программу, для этого зайдите в меню Build->Execute Hello.exe
Ваша программа должна будет выглядеть так:
А окно сообщений при нажатии на кнопку Say Hello:
Резюме
В этой главе вы научились создавать проект программы, визуально проектировать диалоговую панель(вставлять различные элементы управления), связывать элементы управления с событиями с помощью мастера ClassWizard, и выполнять программу.
А теперь вашему вниманию предлагается выполнить упражнение для закрепления пройденного материала.
Упражнение к Уроку
Упражнение
Сейчас вы выполните упражнение. Вам необходимо вставить еще одну кнопку с названием Веер с идентификатором IDC_BEEP_BUTTON, при нажатии на которую компьютер подает сигнал через динамик компьютера.
Функция для подачи сигнала — MessageBeep((WORD)-2);.
Окно вашей программы должно будет выглядеть так:
Ответ к упражнению
Щелкнем на закладку Resource View, раскроем меню Hello Resource, там откроем Dialog и щелкнем мышкой два раза на IDD_HELLO_DIALOG. Откроется окно проектирования.
Вставим туда еще одну кнопку с идентификатором IDC_BEEP_BUTTON и надписью (Сарtion) — Веер.
Заходим в меню View->ClassWizard, выбираем в Object IDs IDC_BEEP_BUTTON, в Messages щелкаем на BN_CLICKED и нажимаем на Add Function, там оставляем все по умолчанию и жмем ОК, затем нажимаем на кнопку Edit Code. И вводим такой текст:
void CHelloDlg::OnBeepButton()
{
// TODO: Add your control notification handler code here
///Мой код начинается здесь///
The Hello Program
MessageBeep((WORD)-2);
///Мой код заканчивается здесь///
}
Теперь выполняем программу, для этого заходим в меню Build->Build Hello.exe, а потом в меню Build выбираем Execute Hello.exe
Вы закончили первый урок!
Сейчас мы создадим программу TEST.EXE
Посмотрим на ее спецификацию и что она должна делать.
• При вводе в строке редактирования слов "Paint" и "Calculator", запускаются соответственно "Windows Paint" и "Windows Calc".
• При снятии флажка Visible, строка редактирования исчезает, а при снятии флажка Enabled, закрывается доступ к окну редактирования.
• При отмечании флажков, все происходит наоборот.
При запуске вашей программы, главное окно должно будет выглядеть так: