BiVANT  Книги     К началу главы

В.А. Биллиг, И.Х. Мусикаев
Visual C++  4 версия        
Книга для программистов.
"Русская редакция", 1997 г.

Глава 1(4)

Описание реакций на события

 Итак, первый этап создания приложения — проектирование интерфейса — закончен. Теперь нужно определить реакцию построенных объектов на возникающие события.

Когда спроектированное диалоговое окно появится на экране, пользователь может выполнять некоторые действия, в частности, щелкать кнопки Вы и Компьютер. Вам предстоит описать реакцию на события, соответствующие этим действиям. Напомним: по нашему сценарию, объекты по-разному реагируют на щелчки. Если начать с компьютера, он промолчит. Объект You в ответ на щелчок кнопки Вы ведет себя "по-человечески" и здоровается. Компьютер продолжает молчать. Второй и третий щелчок кнопки Вы приводит к выводу новых сообщений. На третий раз Компьютер "обретает голос": отзывается и выдает совет дня: "Никогда не разговаривайте с неизвестными!".

После этого начинается новый этап во взаимоотношениях. Окно объекта You служит теперь для ввода имени пользователя. Объект Computer принимает это имя и вежливо здоровается.

Давайте напишем код, реализующий наш сценарий, а заодно познакомимся с ClassWizard., который поможет в этой работе.

Находясь в диалоговом окне, щелкните правую кнопку мыши и из контекстного меню вызовите ClassWizard..

В окне ClassWizard. щелкните вкладку (tab) Message Maps и в окне Object IDs из списка идентификаторов выберите идентификатор IDC_You, соответствующий кнопке Вы. Этот объект может получать два сообщения — BN_CLICKED и BN_DOUBLECLICKED, показанные в окне Messages (см. рис. 1.5).

  1_5.gif (11058 bytes)

{ Рис.1.5 Окно ClassWizard. с выбранной вкладкой Message Maps.}

 

Сообщения BN_CLICKED и BN_DOUBLECLICKED приходят, когда возникает соответствующее событие — одинарный или двойной щелчок кнопки. Обработка сообщений пока выключена. Выделите первое из них и щелкните Add Function (добавить функцию). ClassWizard. предложит создать функцию обработки этого сообщения с именем OnYou. В знак согласия щелкните OK.

Когда ClassWizard. создаст остов функции, тут же можно, щелкнув кнопку Edit Code (редактировать код), перейти к редактированию ее кода, добавляя нужные Вам свойства. Но не будем спешить и отложим эту важную работу до завершения второго этапа.

Повторите все действия для кнопки Компьютер и создайте для нее остов функции OnComp, обрабатывающей нажатие кнопки.

Следующий этап работы с ClassWizard. — связывание окон редактирования с переменными класса CHelloDlg. Для этого выберем в окне ClassWizard. вкладку Member Variables (переменные-члены). Из списка идентификаторов выберем IDC_EDYou, соответствующий окну редактированию You. Щелкнув Add Variables (добавить переменные), в появившемся диалоговом окне задайте имя переменной m_You, ее категорию Control и тип CEdit (см. рис.1.6).

  Назад                Вперед

 

Hosted by uCoz