Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаб_ раб_С++.doc
Скачиваний:
4
Добавлен:
07.05.2019
Размер:
600.58 Кб
Скачать

4.2. Проектирование диалоговой панели.

Проектирование диалоговой панели. Для этого для этого необходимо выполнить действия представленные на рисунке 6.

Рис.6. Диалоговая панель закладки "Resourse View"

На рисунке 6 представлены две надписи:

а. IDD_ABOUTBOX - это название диалоговой панели ABOUT.

б. IDD_HELLO_DIALOG - название главной диалоговой панели. Выполните щелчок по второй строчке (2) и справа появится, диалоговая панель. В этом режиме вы можете ее редактировать, как показано рисунке 7.

Рис.7. Главная диалоговая панель

Удалим из диалоговой панели текст и все кнопки. Справа от диалоговой панели находятся элементы управления (необходимо задать в TOOLS->CUSTOMIZE, в закладке TOOLBARS, CONTROLS - и поставить флажок). Теперь мы можем редактировать панель в полном экране, для этого зайдем в VIEW->FULLSCREEN. Выберем элемент управления Button, и нажмем мышкой на диалоговую панель. После этого опять выделим кнопку левым щелчком мыши, затем нажмем правую кнопку и в раскрывшемся меню выберем Properties (настройки) как показано рисунке 8.

Рис.8. Диалоговая панель настройки

Вместо текста IDC_BUTTON1 введем IDC_SAYHELLO_BUTTON, и зададим итендификатор, по которому Visual C++ будет распознавать элемент. В строке Captions (надпись), введем название кнопки, например: Say Hello.

Вставим теперь еще одну кнопку такого же размера, c ID - IDC_EXIT_BUTTON и Captions (надпись) Exit. Ваша диалоговая панель должна выглядеть, как показано на рисунке 9.

Рис.9. Диалоговая панель вашей программы

4.3. Связывание элементов управления

Сейчас свяжем элементы управления с событиями. Мы имеем всего два элемента – это две кнопки, например: Say Hello и Exit.

Воспользуемся еще одним мастером ClassWizard, для этого зайдем в VIEW->ClassWizard, где появится диалоговая панель, как показано на рисунке 10.

Рис.10. Диалоговая панель мастера ClassWizard

Рассмотрим панель представленную на рисунке 10:

Project – выбор проекта;

ClassName - название класса, элементы которого будут связаны с событиями, необходимо, чтобы было установлено CHelloDlg - это класс, который связан с главным диалоговым окном;

Object IDs - это итендификатор (названия) элементов управления. Первый итендификатор - название самого класса;

Messages - события, которые генерирует программа.

Members function - список функций и соответствующие им события.

Теперь необходимо связать кнопку EXIT с событием BN_CLICKED - которое возникает при нажатие на кнопку. Для этого нужно нажать в Object IDs на IDC_EXIT_BUTTON, справа появится событие, с которым можно связать эту кнопку. Выбираем BN_CLICKED и нажимаем на кнопке Add Function. Этим нажатием определяем связать события с функцией. На рисунке 11 представлена панель выбора названия функции. Оставьте все по умолчанию и нажмите кнопку OK.

Рис.11. Диалоговая панель связи события с функцией

При нажатии переходим в режим редактирования исходного текста где появится тест для написания программы:

void CHelloDlg::OnExitButton()

{ // TODO: Add your control notification handler code here ///Здесь начинается ваш код///

OnOK();

///Здесь заканчивается ваш код///

}

Ваш код OnOK(); - эта функция будет выполняться при каждом нажатии на кнопку EXIT, и она предназначена для завершения программы. Итак, мы связали кнопку 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, как показано на рисунке 12.

Рис.12. Диалоговая панель ClassWizard

Нажимаем на кнопку 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". Теперь осталось построить и выполнить программу. Для этого нужно зайти в меню Build->Execute Hello.exe. и ваша программа должна выглядеть, как показано на рисунке 14.

Рис.14. Диалоговая панель вашей программы

Упражнение.

Необходимо вставить еще одну кнопку с названием, например КЕУ и c идентификатором IDC_КЕУ_BUTTON, при нажатии на которую компьютер подает сигнал через динамик компьютера.

Контрольные вопросы

  1. Как создается программа с помощью мастера проектов (MFC) в программной оболочке Visual C++?

  2. Как проектируется диалоговая панель?

  3. Как связываются элементы управления с событиями?

  4. Как происходит построение и выполнение программы?

Лабораторная работа №5

Создание программы с помощью мастера проектов (MFC) в программной оболочке Visual C++.

Цель работы:

1. Создать проект программы;

2. Визуально спроектировать диалоговую панель;

3. Связать элементы управления;

4. Сохранить и выполнить программу.

Используемое оборудование:

  • персональная ЭВМ, совместимая с IBM PC.

Используемое программное обеспечение:

  • операционная система Windows;

  • интегрированная среда программирования Microsoft Visual C++ 5.0 (ИСП Microsoft Visual C++ 5.0).

  1. Задание по работе

1.1. Загрузить ИСП Microsoft Visual C++ 5.0.

1.2. Изучить команды ИСП Microsoft Visual C++ 5.0.

1.3. Записать протокол работы с интегрированной средой.

  1. Порядок выполнения работы

2.1. Запустить Microsoft Visual C++ 5.0.

2.2. Создать *.cpp файл в рабочем каталоге.

2.3. Выполнить пример и упражнение указанный в работе.

2.4. Закончить работу, запустить программу.

3. Содержание отчета

3.1. Наименование лабораторной работы.

3.2. Цель работы.

3.3. Теоретическую часть.

3.4. Алгоритм программы.

3.5. Текст программы.

3.6. Вывод.

4. Описание работы

4.1. Запуск и работа в ИСП Microsoft Visual C++ 5.0.

Запустить Visual C++. Зайти в меню FILE -> NEW..., и выбрать там Project.

Выполните шаги с помощью Visual C++ и мастера настроек MFC AppWizard. MFC. Как показано в лабораторной работе №4.

Создание программы, например Speed.exe она должна выполнять следующие действия.

Программа Speed основана на диалоговом окне, оснащенном меню: File и Help, в середине главного окна, расположено окно редактирования, в котором можно вводить только числа, а, если зайти в меню File->Current, то появится окно сообщения, показывающее число в окне редактирования.

При запуске вашей программы, главное окно должно будет выглядеть так, как показано на рисунке 15.

Рис.15. Панель вашей программы