Класс TCustomControl. Класс TGraphicControl.
Класс TCustomControl предназначен для создания на его основе нестандартных оконных элементов управления. Процесс визуализации в нем упрощен за счет использования специального класса TCanvas, инкапсулирующего канву (см. гл. 11).
Доступ к канве осуществляется через свойство:
property Canvas: TCanvas;
Отрисовка элемента управления осуществляется методом:
procedure PaintWindowfDC: HDC); override;
После получения сообщения WM_PAINT.
Возможности этого класса унаследовали классы TPanel, TGroupBox, TStringGrid и т. д.
Класс TGraphicControl
Класс TGraphicControl предназначен для создания на его основе визуальных компонентов, не получающих фокус в процессе выполнения приложения. Так как непосредственным предком класса является класс TControl, то потомки TGraphicControl умеют реагировать на управляющие воздействия мышью.
Наглядный пример элемента управления, которому не нужно получать фокус, – это компонент TLabel, предназначенный для отображения текста, или компонент Timage, предназначенный для визуализации изображений.
Для визуализации элементов управления на основе этого класса используется канва, инкапсулированная в классе TCanvas.
Доступ к канве осуществляется через свойство:
property Canvas: TCanvas;
Отрисовка элемента управления осуществляется методом:
procedure PaintWindow(DC: HDC); override;
После получения сообщения WM_PAINT.
Резюме
В настоящей главе рассмотрены важнейшие свойства и методы базовых классов, лежащих в основе VCL. Зная возможности этих классов, вы тем самым будете знать назначение многих свойств и методов в компонентах VCL. Поэтому материал данной главы будет полезен при изучении любых вопросов, рассматриваемых в этой книге в дальнейшем.