Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
227-256.doc
Скачиваний:
2
Добавлен:
11.11.2019
Размер:
339.46 Кб
Скачать

Задание 1. Генерация программы отображения текста заданным шрифтом и создание ресурсов

Выполните следующие действия для генерации программы, модификации ресурсов и добавления обработчиков командных сообщений.

  1. Загрузите Microsoft Visual Studio.NET. Создайте проект, поддерживающий архитектуру Документ/Представление. В окне Generated Classes в списке сгенерированных классов выберите класс вида, а в списке базовых классов Base class — CScrollView (рис. 8.3). Нажмите кнопку Finish для завершения генерации программы.

Рис. 8.3.Окно Generated Classes в процессе генерации программы TextDemo

  1. Постройте программу и запустите ее. Вы увидите типичное окно приложения, сгенерированного MFC Application Wizard (рис. 8.4). Полученная программа не реализует поставленные выше задачи. Необходима ее модификация.

Рис. 8.4. Окно программы TextDemo, сгенерированной MFC Application Wizard

  1. Измените ресурс меню программы. Для этого откройте окно Resource View. В узле Menu выберите меню IDR_MAINFRAME, дважды щелкнув на объекте с этим идентификатором. Измените название меню File на &Options. Удалите все команды меню File, кроме команды Exit и разделителя перед ней. Добавьте новый пункт меню, выбрав в контекстном меню команду Insert New. Введите надпись &Font... в поле Type Here. В результате вы получите меню (рис. 8.5). На рис. 8.6. показаны идентификаторы команд, которые автоматически определены в редакторе ресурсов.

Рис. 8.5. Меню Options программы TextDemo в процессе редактирования

  1. Измените значок программы TextDemo. Для этого откройте значок IDR_MAINFRAME в графическом редакторе. Программа содержит только стандартное изображение значка размером 3232 пиксела. Для редактирования значка удалите все текущие типы изображений значка. Для этого выполните команду ImageDelete Image Type для каждого из появляющихся типов. Затем выполните команду ImageNew Image Type…. В диалоговом окне New Icon Image Type выберите тип 3232, 256 colors. C помощью инструментов панели Image Editor или команд ImageTools создайте изображение значка как на рис. 8.7. Для коррекции палитры используйте команду ImageAdjust Colors….

Рис. 8.6. Идентификаторы команд меню программы TextDemo

Рис. 8.7. Значок программы TextDemo, отображаемый графическим редактором Visual C++ Developer

  1. Сохраните изменения, выполнив команду FileSave All. Постройте программу и запустите ее по команде DebugStart.

  2. Добавьте обработчик командного сообщения, которое генерируется выбором команды меню OptionsFont…. Для этого в окне редактора меню поместите курсор на указанную команду, вызовите контекстное меню и выберите команду Add Event Handler. Когда откроется диалоговое окно Event Handler Wizard, то в поле Command name уже выбран идентификатор команды ID_OPTIONS_FONT. В поле Function handler name мастер уже предложил имя функции OnOptionsFont. В поле Message type выберите тип сообщения COMMAND, в поле Class list выберите класс CTextDemoDoc для включения в него добавляемой функции OnOptionsFont. В результате ваших действий будет добавлено объявления функции в файл TextDemoDoc.h интерфейса класса документа.

afx_msg void OnOptionsFont(); //объявление функции

  1. В файл реализации TextDemoDoc.срр класса документа добавится макрос ON_COMMAND(), показанный ниже полужирным шрифтом, и прототип функции CTextDemoDoc::OnOptionsFont().

BEGIN_MESSAGE_MAP(CTextDemoDoc, CDocument) ON_COMMAND(ID_OPTIONS_FONT, OnOptionsFont) END_MESSAGE_MAP()

  1. Сохраните, постройте и запустите программу TextDemo. Протестируйте программу, попытайтесь выполнить команду меню Font….

Во время тестирования программы доступна команда Font…, однако ее выбор не приводит к каким-нибудь изменениям в окне представления. Вы не увидите диалоговое окно Font и не сможете выбрать атрибуты шрифта.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]