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

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

Глава 1(6)

//(СДЕЛАТЬ: Добавьте здесь дополнительную инициализацию).

После или вместо этого комментария вставьте две строчки, задающие инициализацию переменных:

Count = 0;

InviteDone = FALSE.

Последний и наиболее важный этап работы связан с определением функций обработки сообщений, называемых также обработчиками сообщений. Ранее мы дали задание ClassWizard. построить эти функции. ClassWizard. создал остовы функций OnYou и OnComp, но их тела пока пусты. Пора добавить нужный код.

Для этого следуйте описанной выше технологии. Выбрав имя функции OnYou, щелкните правой кнопкой и перейдите к месту ее определения, где и вставьте после комментария такой код:

// TODO: Add your control notification handler code here

// (СДЕЛАТЬ: Добавьте здесь Ваш код обработчика управляющего уведомления

switch (++Count)

{

// Первый щелчок

case 1 :    m_You.SetWindowText("Привет, компьютер!"); break;

// Второй щелчок

case 2 :    m_You.SetWindowText("Компьютер, проснись!"); break;

// Третий щелчок

case 3 :     m_You.SetWindowText("Поздоровайся, наконец!"); break;

}

 

Поясним этот код. Главное, что здесь демонстрируется, — способ организации вывода текста в окно редактирования. Когда в операторе

m_You.SetWindowText("Привет, компьютер!")

 

объект m_You вызывает метод SetWindowText с параметром, задающим строку текста, текст появляется в окне редактирования, связанном с переменной m_You.

По сценарию текст в окне меняется с каждым из первых трех щелчков кнопки Вы. Дальнейшее зависит от щелчков кнопки Компьютер. Когда компьютер «просыпается», окно m_You используется для ввода имени пользователя.

А вот этот код вставьте в функцию обработки сообщения OnComp:

 

// TODO: Add your control notification handler code here

CString s1="Совет дня : Никогда не разговаривайте с неизвестными!

Ваше имя, пожалуйста.",

s2 = "";

if (Count >= 3)

if (!InviteDone)

{

m_Comp.SetWindowText(s1);

m_You.SetWindowText("");

InviteDone = TRUE;

}

else

{

m_You.GetWindowText(s2);

if (s2 == "")           s2="люди";

m_Comp.SetWindowText("Здравствуйте, "+ s2 +

" ! Всегда рад с Вами работать! " );

m_You.SetWindowText( "");

}

 

Заметьте: при вызове метода GetWindowText объектом m_You в операторе

m_You.GetWindowText(s2)

строка текста, введенная пользователем в окно m_You, передается в строковую переменную s2, с которой можно уже дальше работать.
Этот код завершает реализацию сценария приветствия.

Назад                Вперед

Hosted by uCoz