Внешний вид элемента управления
Для определения цвета компонента используется
свойство
property Color: TColor;
При нахождении указателя мыши над компонентом
его изображение может изменяться в соответствии со значением
свойства
property Cursor:
TCursor;
Для текста компонента шрифт обычно
задается свойством
property Font: TFont;
Сложный класс TFont,
задающий все характеристики шрифта, подробно рассматривается
в гл. 10.
Свойство
property DesktopFont:
Boolean;
определяет возможность использования
шрифта для отображения, который применяется ОС для представления
текста в значках.
Сам текст задается свойством
type TCaption = string;
property Text: TCaption;
Длину текста можно определить при помощи
функции
function GetTextLen:
Integer;
Она возвращает число символов в тексте.
Элемент управления можно сделать видимым
или невидимым. Для этого применяется свойство
property Visible:
Boolean;
Этих же результатов можно достичь методами
show (компонент видим) и
Hide (компонент невидим).
Опубликованное свойство
property Hint: string;
содержит текст ярлыка — однострочной
подсказки, которая появляется в маленькой рамке при
остановке мыши на элементе управления.
Для управления ярлыком используется
свойство
property ShowHint:
Boolean;
При значении True
ярлык начинает работать, при значении
False ярлык выключается.
Для каждого элемента управления можно
создать собственное всплывающее меню. Ссылка на экземпляр
класса TPopupMenu, инкапсулирующего
такое меню, хранится в свойстве
property PopupMenu:
TPopupMenu;
Текущее состояние элемента управления
определяется свойством Controistate:
type TControlState
= set of (csLButtonDown, csClicked, csPalette, csReadingState,
csAlignmentNeeded, csFocusing, csCreating, csPaintCopy,
csCustomPaint, csDestroyingHandle, csDocking,); property
Controistate: TControlState;
Описание возможных состояний элемента
управления представлено в табл. 2.3.
Таблица 2.3. Возможные
состояния элемента управления
|
|
|
|
|
Левая кнопка мыши нажата, но
еще не отпущена. Используется для реализации
события OnMouseDown
|
|
|
Левая кнопка мыши нажата, но
еще не отпущена. Используется для реализации
события OnClick
|
|
|
Состояние соответствует режиму
изменения палитры. Это реакция на сообщение
WM_ PALETTCHANGED
|
|
|
Осуществляется чтение значений
свойств из потока (см. табл. 5.1)
|
|
|
Осуществляется выравнивание
компонента
|
|
Элемент управления получает фокус
|
|
|
Элемент управления и его дочерние
элементы создаются
|
|
|
Отрисовывается копия элемента
управления
|
|
|
Элемент управления выполняет
нестандартные операции отрисовки, заданные разработчиком
|
|
|
Указатель на объект элемента
управления уничтожается
|
|
|
Элемент управления находится
в режиме присоединения
|
В зависимости от совокупности установленных
свойств, элемент управления может соответствовать одному
из возможных стилей, который задается свойством
type TControlStyle
= set of (csAcceptsControls, csCaptureMouse, csDesignlnteractive,
csClickEvents, csFramed, csSetCaption, csOpaque, csDoubleClicks,
csFixedWidth, csFixedHeight, csNoDesignVisible, csReplicatable,
csNoStdEvents, csDisplayDraglmage, csReflector, csActionClient,
csMenuEvents); property ControlStyle: TControlStyle;
Доступность элемента управления в целом
определяется свойством
property Enabled:
Boolean;
При значении True
элемент управления полностью работоспособен. При значении
False элемент управления неактивен
и отображается серым цветом.
Для получения контекста устройства
нос элемента управления используется метод
function GetDeviceContext(var
WindowHandle: HWnd): HDC; virtual;
Набор свойств и методов класса TwinControl
обеспечивает функционирование механизма перетаскивания
(Drag-and-Drop) и механизма присоединения
(Drag-and-Dock).
|