34
Лабораторная работа № 5.
Основы построения графического интерфейса.
Цель работы:
1.Создать простое оконное приложение на базе Windows Forms.
2.Создать элементы управления с помощью редактора форм
3.Встроить в приложение обработчики сообщений
Создание простейшего оконного приложения
1.Запустите Visual Studio.
2.Выберите пункт меню File->New->Project->Visual C++->CLR.
3.В списке шаблонов выберите Windows Forms Application. Этот пункт позволяет создавать приложения на основе каркаса Windows Forms.
4.В поле Имя(Name) введите имя проекта, например Test.
5.Откроется окно проекта Test со вкладкой Form1.h. В этом окне отображается дизайн основного окна приложения (рис. 1).
Рисунок 1 – Форма основного окна приложения.
6.Перейдите к изображению формы, щелкните по ней правой клавишей мыши.
7.Выберите в меню пункт Свойства (Properties) и укажите свойство
IsMdiContainer = true.
8.В поле Текст (Text) введите имя кнопки.
9.Дважды щелкните по кнопке. Откроется окно редактора кода с обра-
ботчиком нажатия кнопки:
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
35
}
10.Вставьте в обработчик следующий код:
MessageBox::Show("Hello, World!");
11.Нажмите F5 для запуска приложения.
12.При появлении формы на экране, нажмите на кнопку формы и убедитесь, что выведено сообщение ("Hello, World!".
13.Закройте форму для возвращения в Visual Studio.
14.Вернитесь на вкладку дизайнера форм. Нажмите на кнопке правой клавишей мыши. Выберите в меню пункт Свойства (Properties).
15.Попробуйте изменить другие свойства кнопки, повторите пункты 1315, чтобы отметить изменение характеристик и внешнего вида кнопки.
Создание обработчиков сообщений
1.Перейдите к изображению формы Form1.
2.Нажмите на форме правой клавишей мыши. Выберите в меню пункт Свойства (Properties).
3.В окне Свойства (Properties) выберите кнопку События (Events).
4.Выберите событие Активация (Activated) и щелкните по нему 2 раза
(рис. 3).
Рисунок 3 – Окно событий формы.
5.Откроется окно редактора кода с обработчиком события активации формы:
private: System::Void Form1_Activated(System::Object^ sender, System::EventArgs^ e) {
}
36
6.Вставьте в обработчик следующий код:
This->Text = "Form1 - Activated";
7.Проделайте пункты 4-5 для события Деактивация (Deactivated).
Вставьте в обработчик следующий код:
This->Text = "Form1 - Deactivated";
8.Нажмите F5 для запуска приложения.
9.При появлении формы на экране, нажмите на кнопку формы и убедитесь, что заголовок формы меняет содержание.
10.Закройте форму для возвращения в Visual Studio.
Код приложения
1.Перейдите в окно браузера проекта.
2.Выберите файл Form1.h. Щелкните по нему 2 раза, чтобы открыть в окне редактора кода.
3.Изучите код, сгенерированный средствами проектирования Visual Studio. Найдите участки создания элементов управления и регистрации обработчиков событий.
4.Выберите файл Test.cpp. Щелкните по нему 2 раза, чтобы открыть в окне редактора кода.
5.Ознакомьтесь со структурой основной процедуры приложения.
Создание меню
1.Перейдите к изображению формы Form1.
2.Выберите справа вкладку Toolbox (Панель инструментов).
3.Добавьте элемент управления MenuStrip (Полоса меню) в верхнюю часть формы Form1. Элемент управления MenuStrip присоединится к верхней части формы.
4.На форме щелкните на элементе управления MenuStrip, введите File, а затем нажмите клавишу Ввод. Новые поля для ввода дополнительных элементов меню отобразятся снизу и справа от первого элемента меню. В них есть место для ввода названий дополнительных пунктов меню. Можно продолжить добавлять элементы меню в любом направлении до тех пор, пока меню не будет готово.
5.В поле под полем File введите Exit и нажмите клавишу Ввод.
6.Дважды щелкните на пункте меню Exit, чтобы открыть Редактор кода.
7.В обработчике событий ExitToolStripMenuItem_Click введите код: this->Close();
8.Нажмите F5 для запуска приложения.
9.При появлении формы на экране, выберите в меню пункт Exit и убедитесь, что приложение завершается.
Задание для самостоятельной работы.
37
Создайте визуальное приложение, отображающее окно с несколькими пунктами меню и кнопками. При выборе пункта меню или кнопки обработчик события должен вывести соответствующее сообщение о событии.