Курсовая работа: Основы разработки электронного учебника
- ComponentState — текущее состояние компоненты.
- ComponentStyle — стиль, определяющий поведение компоненты.
- Name — имя компоненты.
- Tag — свойство типа int, которое не имеет предопределенного значения и может содержать любые данные или указатели, по усмотрению программиста.
Класс TComponent определяет ряд методов, которые придают объекту право владения другими компонентами и возможность доступа к ним посредством Инспектора объектов:
- Destroying и DestroyComponents устанавливают атрибуты данной компоненты и компонент, которыми она владеет, в состояние, указывающее на то, что они подлежат уничтожению.
- HasParent возвращает булево значение, указывающее на наличие родителя компоненты. Обращаться к этому методу следует до ссылок к родителю данной компоненты.
- InsertComponent добавляет компоненту, передаваемую в качестве параметра, к перечню компонент, которыми владеет данная компонента, а RemoveComponent удаляет компоненту из этого перечня.
- FindComponent возвращает указатель экземпляра компоненты, о которой известно только имя, но неизвестна ссылка на владельца
Класс TControl определяет общие для видимых компонент члены данных, методы и события.
Поскольку элементы TControl обладают способностью отображать себя, некоторые его свойства оперируют с положением, размером и видом объекта (Top, Left, Width, Height и Cursor, Hint), а другие свойства относятся к параметрам области клиента (ClientRect, ClientWidth и ClientHeight).
TControl также вводит свойства, устанавливающие видимость, доступность, цвет и шрифт элементов управления (Visible, Enabled, Color и Font). Свойства Text и Caption обеспечивают установку редактируемых текстов и названий.
Наличие свойства Parent (Родитель), содержащего соответствующую ссылку, обусловлено возможностью класса TControl иметь родителя. Этот родитель может быть производным от TWinControl, поскольку родители обязаны быть оконными элементами управления.
TControl содержит ряд событий, возникающих при манипуляциях мышью над, видимыми элементами управления (OnClick, OnDblClick, OnMouseDown, OnMouseMove, OnMouseUp, OnDragOver, OnDragDrop и OnEndDrag).
Большинство компонент являются производными от TWinControl или TGraphicControl. Эти базовые классы рассматриваются ниже.
Класс TWinControl инкапсулирует оконные элементы управления с дескрипторами. Некоторые производные от TWinControl (компоненты TEdit, TListBox и TComboBox) инкапсулируют стандартные элементы управления Windows — поля редактирования, простые и комбинированные списки и т.д. Поэтому программисту не придется манипулировать с ними посредством стандартных функций Windows API, а пользоваться свойствами и методами, предоставляемыми самими компонентами.
Производные компоненты от TWinControl обладают тремя основными характеристиками: они имеют оконные дескрипторы, способны принимать фокус ввода и могут являться родителями других элементов управления. Поэтому многие свойства TWinControl предназначены для изменения фокуса, обслуживания событий клавиатуры и отображения потомков компоненты:
- Brush. Управляет цветом и орнаментом канвы, используемой при заливке графических фигур и фона.
- Controls. Содержит список элементов управления, для которых TWinControl является родителем.
- ControlCount. Содержит число элементов управления, для которых TWinControl является родителем.
- Ctl3d. Определяет, требуется ли трехмерное отображение компоненты.
- Handle. Ссылается на оконный дескриптор объекта Windows, который инкапсулирует TWinControl. Это свойство передается тем стандартным функциям Windows API, которые принимают дескриптор как параметр.
- HelpContext. Задает номер контекстной справки, соответствующий некоторому окну в файле помощи с расширением .hlp. Это свойство позволяет организовать контекстно-чувствительный поиск в справочной службе для отдельных компонент.
- Showing. Указывает, видима или невидима компонента.
- TabStop. Указывает, можно ли использовать клавишу табуляции для выбора нужной компоненты.
- TabOrder. Определяет позиции табулятора выбора компонент.
Методы TWinControl главным образом ориентированы на разработчиков компонент и предназначены для управления фокусом, получения статусной информации, диспетчеризации сообщений и позиционирования:
- Broadcast используется для рассылки сообщений всем потомкам TWinControl.
- CanFocus возвращает булево значение, которое определяет, может ли TWinControl принять фокус ввода. Например, компонента не сможет принять фокус, если ее свойство Visible имеет значение false.