Первой процедурой данного файла является SelectColor – процедура, реализующая работу со стандартным диалогом выбора цвета.
Следующая процедура – MenuChecked – выполняет обработку выбора инструмента. Она меняет позицию «галочки» в главном меню, а также вдавленную кнопку на панели инструментов. Также процедура меняет значение переменной OutMode, отвечающей за текущий инструмент.
Третьей и последней процедурой в файле является процедура MenuProcess, являющаяся чем-то вроде switch’а в программах на C/C++. В ней в зависимости от выбранного пункта меню выполняются определенные действия (в основном вызовы процедур).
Данные модуль содержит процедуры по обработки событий от мыши, которые все связаны с рисованием. Процедуры имеют названия, схожие с названиями сообщений: MouseMove для WM_MOUSEMOVE, MouseLUp для WM_LBUTTONUP, MouseLDown для WM_LBUTTONDOWN и т.д.
При выборе пункта меню Файл-Новый вызывается диалоговое окно. Оно описано в ресурсах программы (Params.rc). Работа с ним осуществляется через вызов функции DlgShow (и, косвенно, через DlgWndProc), которая осуществляет всю черновую работу. Поэтому в основной программе присутствует только вызов DlgShow.
Для запуска программы необходимо запустить EasyPaint.exe.
Для выхода из программы выберите Файл-Выход либо нажмите Escape.
Программа может быть запущена с любого носителя данных, будь то: жесткий диск (HDD), дискета (FDD), CD-диск (CD- и DVD- ROM), различных внешних устройств (Flash, ZIP) и т.д.
Данная программа написана полностью на функциях Win32 API и не использует каких-либо сторонних технологий, модулей и программ.
Данная курсовая работа выполнена на низкоуровневом языке Assembler. Программа предназначена для обработки изображений (BITMAP) набором инструментов, стандартного для программ данного класса (графические редакторы). Важно помнить, что программа сохраняет изображения с форматом пиксела рабочего стола, а загружает с любым корректным форматом.
· Операционная система семейства Win32
· Процессор и оперативная память, достаточные для выполнения первого пункта
· Мышь (не менее 1 кнопки), желательно колесико (или аналог)
· Клавиатура
· 16 Кб свободного места на носителе
· Монитор, поддерживающий режим не менее 800x600x8
Для тестирования данной программы следует произвести следующие действия:
Запустить программу EasyPaint.exe. В главном окне программы у кнопок панели инструментов должны быть изображения, как на рис. 1 из приложения. А также, курсор должен принимать над клиентской областью окна форму перекрестья. Если что-то не так, это значит, что были изменены ресурсы программы и корректная работа программы не гарантируется.
Загрузить какое-либо изображение или работать с исходным пустым. Используя инструменты в любой последовательности и с любыми настройками, получить изображение, которое отвечает логике произведенных действий.
Сохранить полученное изображение, после чего открыть его из системы каким-либо сторонним графическим редактором или просмотрщиком. Соответственно, изображение в программе и сохраненное должны совпадать.
Создать новое изображение, обратив внимание на соответствие указанных параметров и результата. Сделать это с сохранением предыдущего изображения и без него.
Если в результате проделанных действий не возникло ошибок или не было получено каких-либо нелогичных результатов, то можно считать, что программа работает корректно.
Выходными данными является изображение в клиентской области окна, текущие параметры карандаша и кисти, отображаемые в строке состояния, а также изображения, сохраняемые в файл.
Данная курсовая работа предназначена для предоставления простого способа работы с BMP-файлами. Позволяет загружать, сохранять а также редактировать изображения с помощью следующих инструментов:
· Карандаш
· Линия
· Прямоугольник
· Эллипс
· Стирка
· Заливка
· Пипетка
После запуска программы появляется главное окно (Приложение рис.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. Окно параметров нового изображения