Смекни!
smekni.com

Программирование графического режима (стр. 3 из 3)

2.3.5. Обработка главного меню (Menu.inc)

Первой процедурой данного файла является SelectColor – процедура, реализующая работу со стандартным диалогом выбора цвета.

Следующая процедура – MenuChecked – выполняет обработку выбора инструмента. Она меняет позицию «галочки» в главном меню, а также вдавленную кнопку на панели инструментов. Также процедура меняет значение переменной OutMode, отвечающей за текущий инструмент.

Третьей и последней процедурой в файле является процедура MenuProcess, являющаяся чем-то вроде switch’а в программах на C/C++. В ней в зависимости от выбранного пункта меню выполняются определенные действия (в основном вызовы процедур).

2.3.6. Обработка мыши (Mouse.inc)

Данные модуль содержит процедуры по обработки событий от мыши, которые все связаны с рисованием. Процедуры имеют названия, схожие с названиями сообщений: MouseMove для WM_MOUSEMOVE, MouseLUp для WM_LBUTTONUP, MouseLDown для WM_LBUTTONDOWN и т.д.

2.3.7. Обработка диалогового окна (ParamDlg.inc, Приложение рис. 2)

При выборе пункта меню Файл-Новый вызывается диалоговое окно. Оно описано в ресурсах программы (Params.rc). Работа с ним осуществляется через вызов функции DlgShow (и, косвенно, через DlgWndProc), которая осуществляет всю черновую работу. Поэтому в основной программе присутствует только вызов DlgShow.

2.4. Вызов и загрузка программы

Для запуска программы необходимо запустить EasyPaint.exe.

Для выхода из программы выберите Файл-Выход либо нажмите Escape.

Программа может быть запущена с любого носителя данных, будь то: жесткий диск (HDD), дискета (FDD), CD-диск (CD- и DVD- ROM), различных внешних устройств (Flash, ZIP) и т.д.

2.5. Связь программы с другими технологиями

Данная программа написана полностью на функциях Win32 API и не использует каких-либо сторонних технологий, модулей и программ.

3. ТЕХНОЛОГИЧЕСКАЯ ЧАСТЬ

3.1. Руководство программиста

3.1.1. Назначение и условия выполнения программы

Данная курсовая работа выполнена на низкоуровневом языке Assembler. Программа предназначена для обработки изображений (BITMAP) набором инструментов, стандартного для программ данного класса (графические редакторы). Важно помнить, что программа сохраняет изображения с форматом пиксела рабочего стола, а загружает с любым корректным форматом.

3.1.2. Системные требования

· Операционная система семейства Win32

· Процессор и оперативная память, достаточные для выполнения первого пункта

· Мышь (не менее 1 кнопки), желательно колесико (или аналог)

· Клавиатура

· 16 Кб свободного места на носителе

· Монитор, поддерживающий режим не менее 800x600x8

3.1.3. Тестирование программы

Для тестирования данной программы следует произвести следующие действия:

Запустить программу EasyPaint.exe. В главном окне программы у кнопок панели инструментов должны быть изображения, как на рис. 1 из приложения. А также, курсор должен принимать над клиентской областью окна форму перекрестья. Если что-то не так, это значит, что были изменены ресурсы программы и корректная работа программы не гарантируется.

Загрузить какое-либо изображение или работать с исходным пустым. Используя инструменты в любой последовательности и с любыми настройками, получить изображение, которое отвечает логике произведенных действий.

Сохранить полученное изображение, после чего открыть его из системы каким-либо сторонним графическим редактором или просмотрщиком. Соответственно, изображение в программе и сохраненное должны совпадать.

Создать новое изображение, обратив внимание на соответствие указанных параметров и результата. Сделать это с сохранением предыдущего изображения и без него.

Если в результате проделанных действий не возникло ошибок или не было получено каких-либо нелогичных результатов, то можно считать, что программа работает корректно.

2.1.1. Входные и выходные данные

Данная программа – это программа управляемая данными, т.к. вся работа основана на обработке событий (действий пользователя и системы). Это, а также загружаемые изображения – входные данные

Выходными данными является изображение в клиентской области окна, текущие параметры карандаша и кисти, отображаемые в строке состояния, а также изображения, сохраняемые в файл.

3.2. Руководство оператора

2.2.1. Назначение программы

Данная курсовая работа предназначена для предоставления простого способа работы с BMP-файлами. Позволяет загружать, сохранять а также редактировать изображения с помощью следующих инструментов:

· Карандаш

· Линия

· Прямоугольник

· Эллипс

· Стирка

· Заливка

· Пипетка

2.2.2. Выполнение программы

После запуска программы появляется главное окно (Приложение рис.1), в котором происходит основная работа. Все операции реализованы в меню, также часть из них доступна через «горячие клавиши», приведенные в меню. Большинство операций доступны через панель инструментов.

Свойства карандаша и кисти выводятся в строке состояния:

· Цвет карандаша

· Цвет кисти

· Толщина карандаша в пикселях

При выборе создания нового изображения открывается новое окно (Приложение рис.2), в котором можно задать размеры нового изображения, а также указать необходимость сохранения части изображения, помещающейся в границах нового изображения.

ЛИТЕРАТУРА

1. Румянцев П.В. Азбука программирования в Win32 API. – 3-е издание., дополн. – М.: Горячая линия–Телеком, 2001. – 312 с.: ил.

2. MASM32 Library Reference

3. Microsoft Win32 Programmer's Reference

4. www.wasm.ruУроки Iczelion’а по Win32 API в переводе Aquila

ПРИЛОЖЕНИЕ

Рисунок 1. Основное окно программы

Рисунок 2. Окно параметров нового изображения