Следующее» Разработчики Delphi уделили большое внимание возможностям
работы с деловой графикой: простота и удобство ее использования напрямую сказываются
на простоте и удобстве созданных приложений. Вместо дебрей графического
интерфейса Windows разработчик получил несколько инструментов, сколь понятных,
столь же и мощных.
В стандартном графическом интерфейсе Windows (GDI) основой
для рисования служит дескриптор контекста устройства нос и связанные с ним шрифт,
перо и кисть. В состав VCL входят объектно-ориентированные надстройки над
последними, назначением которых является удобный доступ к свойствам
инструментов и прозрачная для пользователя обработка всех их изменений. Обязательным
для любого объекта, связанного с графикой в Delphi, является событие:
property OnChange: TNotifyEvent;
Его обработчик вызывается всякий раз, когда меняются
какие-то характеристики объекта, влияющие на его внешний вид.
Класс TFont
Класс
инкапсулирует шрифт Windows. В Delphi допускаются только горизонтально расположенные шрифты. В
конструкторе объекта по умолчанию принимается шрифт System, цвета ciwindowText и размером 10 пунктов.
Свойства класса приведены в табл. 10.1
Таблица 10.1. Свойства класса TFont
Свойство
|
Описание
|
property Handle: HFont;
|
Содержит дескриптор шрифта
|
property Name: TFontName;
|
Содержит имя (начертание)
шрифта, например, Arial
|
property Style: TFontStyles; TFontStyle = (fsBold, fsltalic, fsUnderline, fsStrikeOut); TFontStyles = set of TFontStyle;
|
Содержит стиль (особенности
начертания) шрифта: соответственно жирный, курсив, подчеркнутый и
перечеркнутый
|
property Color: TColor; TColor = -(COLOR_ENDCOLORS + 1)..$2FFFFFF;
|
Определяет цвет шрифта
|
property Charset: TFontCharset TFontCharset = 0..255;
|
Содержит номер набора
символов шрифта. П о умолчани ю равн о 1 (DEFAULT_CHARSET) . Для
вывода символов кириллицы требуется RUSSIAN CHARSET
|
property Pitch: TFontPitch; TFontPitch = (fpDefault, fpVariable, fpFixed);
|
Определяет способ установки
ширины символов шрифта. Значение fpFixed
соответствует моноширинным шрифтам; fpVariable
— шрифтам с переменной шириной символа. Установка fpDefaul t означает принятие того способа, который определен
начертанием
|
property Height: Integer;
|
Содержит значение высоты
шрифта в пикселах
|
property PixelsPerlnch: Integer;
|
Определяет число точек на
дюйм. Первоначально равно числу точек на дюйм в контексте экрана. Программист
не должен изменять это свойство, т. к. оно используется системой для
приведения изображения на экране и на принтере к одному виду
|
property Size: Integer;
|
Содержит размер шрифта в
пунктах (как принято в Windows). Это
свойство связано с Height
соотношением:
Font.Size := -Font.Height*72/ Font.PixelsPerlnch
|
Установка этих свойств вручную, как правило, не нужна. Если
вы хотите изменить шрифт для какого-то компонента, воспользуйтесь компонентом TFontDiaiog. В нем можно и
поменять свойства, и сразу увидеть получившийся результат на тестовой надписи;
потом выбранный шрифт присваивается свойству Font нужного компонента:
if
FontDialogl.Execute then Editl.Font : = FontDialogl.Font;
Примечание Если вы хотите, не закрывая диалог, увидеть результат применения шрифта на вашем тексте, включите опцию fdApplyButton в свойстве Options объекта TFontDiaiog и напишите для него обработчик события OnApply. При этом в диалоговом окне появится кнопка Apply, по нажатии которой (событие OnApply) можно изменить параметры шрифта.
|
Класс ТРеn
Этот класс инкапсулирует свойства пера GDI Windows. В конструкторе по умолчанию
создается непрерывное (pssoiid)
черное перо шириной в один пиксел.
Свойства класса приведены в табл. 10.2.
Таблица 10.2. Свойства класса TPen
Свойство
|
Описание
|
property Handle: HPen;
|
Содержит дескриптор пера
|
property Color: TColor;
|
Определяет цвет пера
|
property Mode: TPenMode; TPenMode = (pmBlack, pmWhite, pmNop, pmNot, pmCopy, pmNotCopy, pmMergePenNot,
pmMaskPenNot, pirMergeNotPen,
pmMaskNotPen, pmMerge, pmNotMerge, pmMask, pmNotMask, pmXor, piriNotXor) ;
|
Содержит идентификатор
одной из растровых операций, которые определяют взаимодействие пера с
поверхностью. Эти операции соответствуют стандартным, определенным в Windows
|
property Style: TPenStyle;
TPenStyle = (psSolid, psDash, psDot, psDashDot, psDashDotDot, psClear,
psInsideFrame) ;
|
Определяет стиль линии,
рисуемой пером. Соответствующие стили также определены в Windows
|
property Width: Integer;
|
Содержит значение толщины
пера в пикселах
|
Установка этих свойств вручную, как правило, не нужна. Если
вы хотите изменить шрифт для какого-то компонента, воспользуйтесь компонентом TFontDiaiog. В нем можно и
поменять свойства, и сразу увидеть получившийся результат на тестовой надписи; потом
выбранный шрифт присваивается свойству Font нужного компонента:
if
FontDialogl.Execute then Editl.Font : = FontDialogl.Font;
Примечание Если вы хотите, не закрывая диалог, увидеть результат применения шрифта на вашем тексте, включите опцию fdApplyButton в свойстве Options объекта TFontDiaiog и напишите для него обработчик события OnApply. При этом в диалоговом окне появится кнопка Apply, по нажатии которой (событие OnApply) можно изменить параметры шрифта.
|
Класс TBrush
Этот класс инкапсулирует свойства кисти — инструмента для
заливки областей. Когда создается экземпляр этого класса, первоначально
используется белая сплошная (styie=bsSoiid) кисть. Свойства
класса приведены в табл. 10.3.
Таблица 10.3. Свойства класса TBrush
Свойство
|
Описание
|
property Handle: HBrush;
|
Содержит дескриптор кисти
|
property Color: TColor;
|
Определяет цвет кисти
|
property Style: TBrushStyle;
TBrushStyle = (bsSolid, bsClear, bsHorizontal, bsVertical,
bsFDiagonal, bsBDiagonal, bsCross, bsDiagCross);
|
Определяет стиль кисти
(фактура закраски)
|
property Bitmap: TBitmap;
|
Содержит битовую карту,
определенную пользователем для закраски поверхностей. Если это свойство
определено, то свойства Color и style недействительны
|
Шрифт, перо и кисть не могут использоваться самостоятельно.
Они являются составными частями специального класса, который и будет сейчас рассмотрен. Следующее»
Нравится
|