
Волгоградский государственный социально-педагогический университет
Кафедра информатики и информатизации образования
Программирование Часть 2
Основы программирования на языке
OBJECT PASCAL
Лабораторная работа №9
Статическая графика в Delphi (Kylix)
Волгоград
2013
Составитель: Глазов С.Ю., доцент кафедры общей физики ВГПУ
Программирование. ч.2. Основы программирования на языке Object Pascal.
Лабораторная работа №9 Статическая графика в Delphi (Kylix)
2013.
Лабораторная работа № 9
Статическая графика в Delphi
Цель работы: изучить графические компоненты Delphi, познакомится со свойством Canvas, которое предоставляет доступ к графическому образу объекта на экране.
В стандартную библиотеку визуальных компонент Delphi входит несколько объектов, с помощью которых можно придать своей программе совершенно оригинальный вид. Это – TImage (TDBImage), TShape, TBevel.
TImage - компонент рассмотрен в работе №5 «Стиль SDI».
TShape- простейшие графические объекты на форме типа круг, квадрат и т.п. Вид объекта указывается в свойстве Shape. Свойство Pen определяет цвет и вид границы объекта. Brush задает цвет и вид заполнения объекта. Эти свойства можно менять как во время дизайна, так и во время выполнения программы.
TColorGrid - таблица цветов - компонент, используемый для создания таблицы цветов, в которой пользователь выбирает требуемый цвет. В таблице цветов можно выбрать два цвета ForeGroundColor(левая кнопка мыши) и BackGroundColor(правая кнопка мыши).
Рис.1. Демонстрация компонента TShape
Рассмотрим пример (рис.1), в котором показано, как во время выполнения программы можно изменять свойства объекта TShape. Изменение цвета объекта (событие OnChange для ColorGrid1):
procedure TForm1.ColorGrid1Change(Sender: TObject);
begin
Shape1.Brush.Color:=ColorGrid1.ForeGroundColor;
end;
TBevel - объект для украшения программы, может принимать вид рамки или линии. Объект предоставляет меньше возможностей по сравнению с TPanel, но не занимает ресурсов. Внешний вид указывается с помощью свойств Shape и Style.
Свойство объектов Canvas
У ряда объектов из библиотеки визуальных компонент есть свойство Canvas (канва), которое предоставляет простой путь для рисования на них. Эти объекты - TBitmap, TComboBox, TDBComboBox, TDBGrid, TDBListBox, TDirectoryListBox, TDrawGrid, TFileListBox, TForm, TImage, TListBox, TOutline, TPaintBox, TPrinter, TStringGrid. Canvas является в свою очередь объектом, объединяющим в себе поле для рисования, карандаш (Pen), кисть (Brush) и шрифт (Font). Используя Canvas, Вы можете воспроизводить на форме любые графические объекты - картинки, многоугольники, текст и т.п. без использования компонент TImage, TShape и TLabel (т.е. без использования дополнительных ресурсов), однако при этом Вы должны обрабатывать событие OnPaint того объекта, на канве которого Вы рисуете. Событие OnPaint наступает, когда приходит сообщение Windows о необходимости перерисовать испорченное изображение. Изображение может испортится из-за временного перекрытия данного окна другим окном того же или постороннего приложения. Обработчик данного события должен перерисовать изображение. При перерисовке изображения канвы Canvas можно использовать свойство ClipRect, которое указывает область канвы, внутри которой изображение испорчено. Рассмотрим подробнее свойства и методы объекта Canvas.