- •Лабораторный практикум «Основы разработки приложений Windows» Книга 1
- •Часть 1. Теоретические сведения4
- •Часть 2. Лабораторный практикум95
- •Часть 1 Теоретические сведения
- •1. Структура приложения Windows Простейшая программа с главным окном
- •Структура программы
- •Главная функция WinMain()
- •Регистрация класса окна
- •Создание и показ окна
- •Сообщения Windows и цикл их обработки
- •Оконная функция
- •Макрос handle_msg и структурирование программы
- •2. Интерфейс графических устройств
- •Простая программа, использующая средства gdi
- •Обработка сообщений wmpaint
- •Контекст устройства
- •Использование графических инструментов
- •3. Ресурсы: меню Простая программа с меню
- •Файл ресурсов
- •Описание меню в файле ресурсов
- •Сообщение wmcommand
- •Программное создание меню
- •Плавающее меню
- •Инструментальная панель
- •Всплывающие подсказки
- •0,"Первая строка"
- •1,"Вторая строка"
- •2,"Третья строка"
- •4. Ресурсы: диалоговые окна
- •Простая программа с меню и диалогом
- •Описание диалога в файле ресурсов
- •Обслуживание модального диалога
- •Модальный диалог как главное окно приложения
- •Немодальный диалог
- •Список в диалоговом окне
- •Окно редактирования и статический элемент управления
- •Графика в диалоговом окне
- •Перекрашивание диалогового окна и его элементов
- •Часть 2 Лабораторный практикум Работы лабораторного практикума Работа 1. Вызов функций Windows
- •Работа 2. Главное окно приложения (пример 1-1 из настоящего пособия)
- •Работа 3. Вывод в главное окно приложения текста и фигур (пример 2-1 из настоящего пособия)
- •Работа 4.Вывод в главное окно приложения текста и фигур (индивидуальное задание а)
- •Работа 5. Меню и модальный диалог (пример 4-1 из настоящего пособия)
- •Работа 6.Меню (индивидуальное задание в)
- •Работа 7.Модальный диалог в качестве главного окна приложения (индивидуальное задание с)
- •Работа 8.Вывод графика в главное окно приложения (индивидуальное заданиеD)
- •Работа 9. Немодальный диалог
- •Работа 10. Диалог с окном редактирования
- •Работа 11. Программное создание меню
- •Работа 12. Плавающее меню
- •Работа 13. График в диалоговом окне
- •Работа 14. Инструментальная панель (tool bar)
- •Работа 15. Инструментальная панель со всплывающими подсказками (tool tips)
- •Работа 16. Пользовательские пиктограммы и курсоры
- •Работа 17. Локализация программных продуктов
- •Индивидуальные задания лабораторного практикума
Работа 15. Инструментальная панель со всплывающими подсказками (tool tips)
Модифицируйте предыдущую программу, введя в нее всплывающие подсказки к кнопкам инструментальной панели. Организация всплывающих подсказок описана в подразделе “Всплывающие подсказки” настоящего пособия.
Работа 16. Пользовательские пиктограммы и курсоры
a.Пиктограмма. Загрузив средуBorland C++, создайте в ней новый ресурс – пиктограмму. Для этого командойFileNewResource Project откройте редактор ресурсов и выберите в нем пунктIcon Image. Если в кадре редактора не окажется панелей цветов или инструментов, выведите их выбором пунктовIconShowToolPalette иIconShowColorPalette. Если поле для рисования курсора окажется слишком маленьким, измените масштаб выбором пункта менюIconZoom In. Нарисуйте произвольное цветное изображение пиктограммы. Последовательно закрывая окна редактора ресурсов, сохраните созданное изображение в файле с расширением.ICO.
Воспользуйтесь программой из работы 8 (график в главном окне). Включите в проект файл ресурсов с предложением
имя_ресурсаICON "имя_файла_пиктограммы"
На этапе регистрации класса окна с помощью функции LoadIcon() загрузите созданный ресурс из экземпляра приложения (не из Windows) и поместите его дескриптор в соответствующий элемент структурыWNDCLASS.Убедитесь в том, что приложению назначена новая пиктограмма. Посмотрите, как выглядит приложение при выводе на экран содержимого вашей папки (с помощью значка “Мой компьютер”).
b.Простой черный курсор. Аналогично предыдущему пункту создайте новый ресурс – курсор (выбором пунктаFileNew Resource ProjectCursor Image). По умолчанию курсор рисуется черным цветом по прозрачному полю (прозрачные области курсора отображаются в окне редактора темно-зеленым цветом). Нарисуйте пером какое-либо простое черное изображение – стрелку или галочку.
Воспользуйтесь предыдущим приложением. Измените в нем фон главного окна, сделав его цветным. Включите в его файл ресурсов предложение
имя_ресурсаCURSOR "имя_файла_курсора"
На этапе регистрации класса окна с помощью функции LoadCursor() загрузите созданный ресурс из экземпляра приложения и поместите его дескриптор в соответствующий элемент структурыWNDCLASS.Убедитесь в том, что приложению назначен новый курсор.
c.Прозрачный и инверсный курсоры. Закройте окно с файлом.RC.Отобразите его снова в режимеEdit Resources. Щелкнув по крестику слева от пунктаCURSOR, а затем по имени вашего курсора, получите его изображение в правом окне редактора ресурсов. Выбором пункта менюResourceEdit перейдите в графический кадр редактора. Редактор позволяет рисовать курсор (или его отдельные детали) тремя цветами: черным, белым и инверсным по отношению к фону, на котором он находится. Кроме того, инструментам рисования курсора можно назначить режим прозрачности, что позволяет в процессе редактирования изображения курсора стирать его отдельные части. Режим черного цвета устанавливается щелчком левой клавиши мыши по большому черному квадрату на панели цветов; режим белого цвета – щелчком по большому белому квадрату; режим инверсного изображения – щелчком по маленькому розовому крестику в правой части панели цветов; переход к стиранию осуществляется щелчком по маленькому зеленому крестику там же. Текущий режим отображается в правой части панели инструментов. Выбранный цвет действует на все инструменты рисования (карандаш, ведерко с краской, пустые или залитые фигуры и пр.).
Добавьте к изображению курсора две залитые фигуры, например, круги и эллипсы (правильный круг рисуется при нажатой клавише Shift).Одну фигуру нарисуйте белым цветом, другую – в инверсном режиме. Можно также нарисовать фигуру черным тонким пером, залив ее белым цветом. Закройте все окна редактора, сохранив измененный ресурс.
Нарисуйте в главном окне приложения (помимо имеющего там графика) залитый каким-либо цветом круг или квадрат. Выполните прогон приложения и, перемещая созданный вами курсор по его окну, пронаблюдайте взаимодействие курсора с элементами изображения в окне.