Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование на Pascal / Delphi / Справочник по компонентам Delphi.doc
Скачиваний:
188
Добавлен:
02.05.2014
Размер:
1 Mб
Скачать

Графическая подсистема

Разработчики Delphi уделили большое внимание возможностям работы с де­ловой графикой: простота и удобство ее использования напрямую сказывается на простоте и удобстве созданных приложений. Вместо дебрей графического интерфейса Windows разработчик получил несколько инструментов, сколь понятных, столь же и мощных.

Другой бич работы с графикой в Windows — проблема рационального исполь­зования ресурсов. Для больших программных комплексов она стала в по­следнее время нешуточной (это касается, по крайней мере, версий Windows до 3.11 включительно). Такие монстры, как Microsoft Office, потребляют во время работы львиную долю ресурсов. В Delphi ресурсами GDI незримо для пользователя "заведуют" специальные менеджеры, ведущие списки всех разме­щенных кистей, перьев, шрифтов и т. п. и управляющие их использованием.

Обязательным для любого объекта, связанного с графикой в Delphi является событие

property OnChange: TNotifyEvent;

Его обработчик вызывается всякий раз, когда изменились какие-то харак­теристики объекта, влияющие на его внешний вид.

В стандартном GDI основой для рисования служит дескриптор контекста устройства hDC и связанные с ним шрифт, перо и кисть. В состав VCL входят объектно-ориентированные надстройки над последними, назначением которых является удобный доступ к свойствам инструментов и прозрачная для поль­зователя обработка всех их изменений. Сначала опишем три этих класса.

Класс tFont

Свойства класса приведены в таблице:

property Handle: HFont;

Содержит дескриптор шрифта.

(р5) property Name: TFontName;

Содержит имя (начертание) шрифта, например, Arial.

(РЁ) property Style: TFontStyles; TFontStyle = (fsBold, fsltalic, fsUnderline, fsStrikeOut); TFontStyles = set of TFontStyle;

Содержит стиль (особенности начертания) шрифта: соответственно жирный, курсив, подчеркнутый и перечеркнутый.

(РЙ) property Color: TColor; TColor = -(COLORENDCOLORS 4-1) .,$2FFFFFF;

Определяет цвет шрифта.

(Из) property Pitch: TFontPitch ; TFontPitch = (fpDefault, fpVariable, fpFixed) ;

Определяет способ установки ширины символов шрифта. Значение fpFixed со­ответствует моноширинным шрифтам; fpVariable — шрифтам с переменной шириной символа. Установка fpDefault означает принятие того способа, который определен начертанием.

(PE) property Height: Integer;

Содержит значение высоты шрифта в пикселах.

property PixelsPerInch: Integer;

Определяет число точек на дюйм. Первоначально равно числу точек на дюйм в контексте экрана. Программист не должен изменять это свойство, т. к. оно используется системой для приведения изображения на экране и принтере к одному виду.

(Pb) property Size: Integer;

Содержит размер шрифта в пунктах (принято в Windows). Это свойство связано с Height соотношением.

Font.Size := -Font.Height * 72 / Font.PixelsPerInch;

Соседние файлы в папке Delphi