Постановка задачи. Создать графический редактор, рисующий основные фигуры: прямоугольник, окружность, линию. Ввод координат осуществлять путем нажатия и отпускания кнопки мыши. Для рисования фигур использовать меню или (и) панель инструментов – компонент TToolBar. Реализовать выбор цвета для контура фигуры и для заливки. Обеспечить возможность открытия и сохранения в графическом файле рисунка. При рисовании линии предусмотреть рисование мышью с отпусканием левой кнопки.
Реализация. Положите на форму:
· компонент Image1, его графическое поле будет использоваться в качестве области рисования, а также сохраняться в файле;
· четыре надписи TLabel для вывода имен координат;
· четыре редактора TEdit для вывода значений координат;
· компонент TMainMenu для создания пунктов меню «Файл», «Графические примитивы», «Очистка поля», «Выбор цвета»;
· панель инструментов – компонент TToolBar для дублирования некоторых функций меню, или же вместо меню;
· коллекцию изображений ImageList1 для хранения изображений, которые будут помещены на кнопки панели инструментов;
· диалог TColorDialog, позволяющий выбрать цвет с использованием диалогового окна;
· диалог TOpenPictureDialog, который позволяет открыть файл в диалоговом окне;
· диалог TSavePictureDialog, который позволяет через диалоговое окно сохранить файл.
На рис. 25 показана форма проекта, в которой компонент TToolBar не используется.
Рис. 25. Форма проекта «Графический редактор»
Создадим программные коды обработчиков событий нажатия и отпускания кнопки мыши на графическом поле Image1.
Аналогично пишется код для выбора цвета заливки области рисования.
Задание. Закончите этот проект. Нарисуйте что-нибудь и сохраните в файле. Положите панель инструментов – компонент TToolBar для дублирования некоторых опций меню, коллекцию изображений ImageList1 для хранения изображений, которые будут помещены на кнопки панели инструментов, и напишите к кнопкам соответствующие обработчики.