- •«Разработка растрового графического редактора»
- •Содержание
- •Задание на курсовую работу.
- •2. Введение.
- •4.2. Закрытие формы
- •4.3. Открытие картинки
- •5. Редактирование картинки
- •5.1. Движение ползунка
- •5.2. Создание главной формы
- •5.3. Выбор инструмента
- •6.1. Процедура нажатия на кнопку
- •6.2. Вызов контекстного меню
- •6.3. Движение курсора
- •6.4. Отпускание кнопки мыши
- •6.5. Копирование
4.2. Закрытие формы
Блок-схема №1 показывает последовательность действий при нажатии на кнопку «Новая картинка». В случае если до нажатия на кнопку происходило закрытие формы рисования – это надо учесть, чтобы не произошло переполнение массива форм и не открывалось более 10 форм рисования. Это реализовано в процедуре TPic.FormCloseQuery (Закрытие формы рисования). В данной процедуре введены вспомогательные переменные (счетчики) для цикла прохода по всем формам.
Да
Нет
Схема 2. Блок-схема закрытия формы рисования.
4.3. Открытие картинки
Вслучае нажатия на кнопку «Открыть» происходит проверка наличия открытых форм. Если ни одна форма не открыта, то открывается новая форма и в нее загружается картинка. В данной процедуре использованы локальные переменные для временного хранения открываемой картинки, а так же, переменные для хранения высоты и ширины открываемой картинки.
Да
Да
Схема 3. Блок-схема нажатия на кнопку «Открыть картинку».
5. Редактирование картинки
После открытия или создания картинки можно приступать к рисованию. Для этого мы поместили соответствующие элементы на главную форму. На ней размещены кнопки которые соответственно включают инструменты рисования (Кисть, Линия, Стерка, Прямоугольник, Овал, Многоугольник, режим Выделения), панели выбора цвета и объект который изменяет толщину линий рисования.
5.1. Движение ползунка
Считывание толщины линий происходит в процедуре перемещения ползунка TrackBar1.
Да
Да
Нет
Да
Нет
Да
Нет
Да
Нет
Да
Нет
Нет
Схема 4. Блок-схема движения ползунка TrackBar1.
5.2. Создание главной формы
Начальные значения переменных задаются при создании главной формы.
Схема 5. Блок-схема создания главной формы.
5.3. Выбор инструмента
Для того чтобы сохранять значение толщины линий разных инструментов мы создали различные переменные и перезаписываем их в зависимости от нажатия кнопок. При нажатии на каждую кнопку выбора инструментов происходит установка ползунка TrackBar1 в соответствующее толщине положение. Далее идет перезапись переменной и деактивация SpinEdit1.
Схема 6. Блок-схема нажатия на кнопку «Линия».
По аналогичным схемам построены нажатия на остальные кнопки инструментов. Отличается лишь процедура нажатия на кнопку Многоугольник. В ней происходит активация SpinEdit1.
6. Процедуры рисования.
Для редактирования изображений создана отдельная форма. На неё помещается и редактируется изображение. В этой форме используются переменные из всех форм, и есть свои собственные переменные, необходимые для рисования.
Все основные действия над картинкой происходят в процедурах Image1MouseDown (нажатие на кнопку мыши), Image1MouseMove (движение курсора), Image1MouseUp (отпускание кнопки мыши).