
Задания для самостоятельного выполнения
Задание 1.
Создайте проект, дав ему имя SimplProg1 и выбрав его месторасположение в папке D:\work. Откройте файл SimpleProg1.cpp и введите в него приведенный выше код. Сохраните проект, постройте и запустите исполнимый файл. Проанализируйте результат.
Задание 2.
Создайте аналогичным образом проект SimplProg2. Вместо пункта A Simple 32 Application в соответствующем диалоговом окне выберите пункт A typical “Hello World!” application. Не меняя ничего в проекте, постройте исполняемый файл и запустите его. Проанализируйте различия в исходных программных кодах обоих проектов. Разберитесь в разработке меню в программах. Найдите файл ресурсов в и разберитесь в правилах создания ресурсов. Замените приветствие “Hello, World” на свой текст.
Задание 3.
Создайте проект под именем Figures. Приложение должно рисовать четыре геометрических фигуры: синусовая волна, эллипс, прямоугольник, прямоугольник со скругленными углами. Каждая фигура должна располагаться в своей четверти окна. Сравните Ваше решение с имеющимся вариантом выполнения.
Видоизмените код так, чтобы фигуры рисовались жирной линией красного цвета. Рекомендация к выполнению: создание пера выполнить в обработке сообщения WM_CREATE, выбор в контекст устройства - в обработке сообщения WM_PAINT, удаление пера из контекста устройства – в обработке сообщения WM_DESTROY, дескриптор пера можно объявить в функции окна с ключевым словом static (объяснить: почему?).
Затем видоизмените код так, чтобы контур каждой фигуры рисовался отдельным цветом. Используйте цвета: красный, зеленый, синий, желтый.
Задание 4.
Создайте проект под именем OutpText. Окно приложения должно в нижней части иметь два элемента управления: поле ввода и кнопку. После ввода текста в поле ввода и нажатия на кнопке текст должен выводиться в центральной части окна. Сравните Ваше решение с имеющимся вариантом выполнения.
Видоизмените код так, чтобы текст выдавался в верхней части окна. Затем видоизмените код так, чтобы текст выдавался в верхней, нижней и центральной частях окна различными цветами системного шрифта. Видоизмените последнее решение так, чтобы текст выдавался разными размерами.
Контрольные вопросы
-
Какова общая структура Win32 приложения?
-
Что такое сообщения и как они идентифицируются?
-
Как создать в программе свое пользовательское сообщение?
-
Что такое класс окна и как он регистрируется?
-
Что такое цикл обработки сообщений, и каково его назначение?
-
Какие функции служат для управления сообщениями?
-
Что такое оконная функция? Какова её структура?
-
Каковы общие принципы введения в приложение элементов управления?
-
Какие классы элементов управления Вы знаете? Какие функции служат для управления ими? Какие события с ними связаны?
-
Как реализуется графика в Win32 приложениях? Какие функции при этом используются?