Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

билет 2

.pdf
Скачиваний:
12
Добавлен:
12.04.2015
Размер:
1.84 Mб
Скачать

property ClientOrigin: TPoint;

property ClientRect: TRect;

property ClientWidth: Integer;

property Color:TColor;

property Constraints: TSizeConstraints;

property ControlState: TControlState;

property ControlStyle: TControlStyle;

property Cursor: TCursor;

property DesktopFont: Boolean;

property DragCursor: TCursor;

property DragKind: TDragKind; TDragKind = (dkDrag, dkDock);

property DragMode: TDragMode; TDragMode = (dmManual,dmAutomatic);

property Enabled: Boolean;

property Floating: Boolean;

property Font: TFont;

property Height: Integer;

property Hint: String;

Координаты положения на экране левого верхнего угла клиентской области компонента. Свойство только для чтения.

Определяет координаты углов клиентской области компонента.

Горизонтальный размер клиентской области в пикселях.

Цвет фона компонента.

Позволяет задавать ограничения на допустимые изменения размеров компонента при изменении размеров окна приложения.

Характеризует текущее состояние компонента во время выполнения приложения. Используется при создании новых классов.

Определяет характеристики стиля компонента. Используется при создании новых классов.

Определяет вид курсора мыши, при попадании его в область компонента.

Определяет, использует ли компонент для отображения текста изображение шрифта Windows.

Определяет вид курсора мыши, при попадании его в область компонента в процессе перетаскивания.

Определяет, будет ли объект перетаскиваться по технологии Drag&Drop илиDrag&Doc.

Определяет автоматическое или программное начало процесса перетаскивания.

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

Определяет, находится ли компонент в состоянии "плавающего" окна. Свойство только для чтения.

Определяет атрибуты шрифта.

Высота компонента в пикселях.

Определяет текст подсказки.

property IsControl: Boolean;

property Left: Integer;

property LRDockWidth: Integer;

property MouseCapture: Boolean;

property property Name: TComponentName; TComponentName=String;

property Parent: TWinControl;

property ParentColor: Boolean;

property ParentFont: Boolean;

property ParentShowHint: Boolean;

property PopupMenu: TPopupMenu;

property ScalingFlags: TScalingFlags;

Определяет, сохраняет ли форма свои специфические свойства в поток. Свойство защищенное. Используется при создании новых компонентов.

Координата левого края компонента в пикселях.

Ширина компонента, когда он в последний раз размещался в контейнере горизонтально. Свойство только для чтения.

Определяет, может ли компонент захватываться мышью. Используется для создания новых компонентов.

Имя компонента.

Определяет родительский компонент, в площади которого находится данный компонент.

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

Включает и выключает использование шрифта родительского компонента.

Включает и выключает свойство ShowHint родительского компонента.

Определяет связанный с компонентом объект всплывающего меню.

Показывает, какие атрибуты компонента еще не отмасштабированы. Используется при разработке новых компонентов.

property ShowHint: Boolean;

 

Разрешает или запрещает показывать окно подсказки.

 

 

 

 

 

 

property TBDockHeight: Integer;

 

Высота компонента, когда он в последний раз размещался в

 

контейнере вертикально. Свойство только для чтения.

 

 

 

 

 

 

 

 

property Text: TCaption;

 

Текст, связанный с данным компонентом.

TCaption=String;

 

 

 

 

 

 

 

 

 

property Top: Integer;

 

Координата верхнего края компонента в пикселях.

 

 

 

 

 

 

property UndockHeight: Integer;

 

Высота компонента, которая была в последний раз, когда он

 

отображался плавающим окном. Свойство только для чтения.

 

 

 

 

 

 

 

 

property UndockWidth: Integer;

 

Ширина компонента, которая была в последний раз, когда он

 

 

 

 

 

property Visible: Boolean;

property Width: Integer;

property WindowProc: TWndMethod;

property WindowText: PChar;

отображался плавающим окном. Свойство только для чтения.

Делает компонент видимым или невидимым.

Горизонтальный размер компонента в пикселях.

Содержит оконную процедуру обработки сообщений, поступающих компоненту. Используется при создании новых компонентов.

Содержит текст, связанный с данным компонентом.

Помимо перечисленных свойств, класс TControl наследует также ряд свойств класса TComponent, из которых можно отметить ComponentCount, ComponentIndex, Components, Owner, Tag и другие.

К оглавлению

Методы класса TControl

В приведенной ниже таблице перечислены только те методы, которые могут применяться пользователями или разработчиками не очень сложных компонентов.

Таблица 2. Методы класса TControl

 

 

 

Метод

 

Описание

 

 

 

 

 

 

procedureBeginDrag(Immediate: Boolean;

 

Начинает процесс перетаскивания компонента.

Threshold: Integer = -1);

 

 

 

 

 

 

 

 

procedure BringToFront;

 

Переносит компонент выше других компонентов на той

 

же форме.

 

 

 

 

 

 

 

 

 

 

Используется, чтобы послать

 

 

сообщение CM_CHANGED родительскому компоненту,

Changed;

 

если в свойствах данного компонента сделаны какие-то

 

 

изменения, на которые должен прореагировать

 

 

родительский компонент.

 

 

 

 

 

 

procedure ChangeScale(M, D:

 

Изменяет масштаб компонента.

Integer); dynamic;

 

 

 

 

 

 

procedure Click; dynamic;

function ClientToScreen(constPoint: TPoint): TPoint;

constructor Create(AOwner: TComponent); override;

procedure DblClick; dynamic;

procedureDoEndDrag(Target:TObject; X, Y: Integer); dynamic;

procedure DoStartDrag(varDragObject: TDragObject);dynamic;

procedure DragCanceled;dynamic;

procedure DragDrop(Source: TObject; X, Y: Integer);

procedure EndDrag(Drop: Boolean);

GetTextBuf;

GetTextLen;

procedure Hide;

procedure Invalidate; virtual;

procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);dynamic;

Вызывает обработчик события OnClick при щелчке мыши. Используется при проектировании новых классов.

Преобразует координаты клиентской области в координаты экрана.

Конструктор переопределен для задания начальных значений свойств компонента.

Вызывает обработчик события OnDblClick при двойном щелчке мыши. Используется при проектировании новых классов.

Вызывает обработчик события OnEndDrag. Используется при проектировании новых классов.

Вызывает обработчик события OnStartDrag. Используется при проектировании новых классов.

Прерывает перетаскивание. Используется при проектировании новых классов.

Вызывает обработчик события OnDragDrop. Используется при проектировании новых классов.

Завершает (успешно или неуспешно) перетаскивание. Используется при проектировании новых классов.

Записывает в заданный буфер фиксированного размера значение свойстваText. Используется, если нужна обратная совместимость с 16-битными кодами.

Возвращает длину строки свойства Text, необходимую для задания размера буфера в методе GetTextBuf.

Делает компонент невидимым.

Вызывает полную перерисовку испорченного изображения компонента.

Вызывает обработчик события OnMouseDown. Используется при проектировании новых классов.

procedure MouseUp(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);dynamic;

procedure Refresh;

procedure Repaint;

function ScreenToClient(constPoint: TPoint): TPoint;

SendCancelMode;

procedure SendToBack;

procedure SetBounds(ALeft, ATop, AWidth, AHeight: Integer); virtual;

SetTextBuf;

procedure Show;

procedureUpdateBoundsRect(const R: TRect);

Вызывает обработчик события OnMouseUp. Используется при проектировании новых классов.

Немедленно перерисовывает компонент на экране, вызывая метод Repaint.

Немедленно перерисовывает компонент на экране, вызывая, при необходимости, метод Invalidate.

Преобразует координаты экрана в координаты клиентской области компонента.

Прерывает модальное состояние элемента.

Переносит компонент ниже других компонентов в той же форме.

Задает сразу четыре свойства: Left, Top, Width и Height.

Записывает в заданный буфер значение свойства Text. Используется, если нужна обратная совместимость с 16-битными кодами.

Делает видимым невидимый компонент.

Изменяет, как и SetBounds, полное описание BoundsRect, но не перерисовывает изображение компонента на экране.

К оглавлению

События класса TControl

В классе TControl, в отличие от предшествующих ему в иерархии, описаны не только свойства и методы, но и следующие события:

Таблица 3. События класса TControl

 

Событие

 

Описание

 

 

 

 

 

 

 

 

 

 

 

 

 

 

property OnClick: TNotifyEvent;

property OnDblClick: TNotifyEvent;

property OnDragDrop: TDragDropEvent;

type TDragDropEvent = procedure(Sender, Source: TObject; X, Y: Integer) of object;

property OnDragOver: TDragOverEvent;

type TDragOverEvent = procedure(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean) of object;

property OnEndDrag: TEndDragEvent;

type TEndDragEvent = procedure(Sender, Target: TObject; X, Y: Integer) of object;

property OnMouseDown: TMouseEvent;

type TMouseEvent = procedure(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer) of object;

property property OnMouseMove: TMouseMoveEvent; type TMouseMoveEvent = procedure(Sender: TObject; Shift: TShiftState; X, Y: Integer) of object;

property OnMouseUp: TMouseEvent;

property property OnStartDrag: TStartDragEvent; type TStartDragEvent = procedure(Sender: TObject; var DragObject: TDragObject) of object;

Событие при щелчке на компоненте и некоторых других действиях пользователя.

Событие при двойном щелчке на компоненте.

Событие при отпускании перетаскиваемого компонента.

Событие при перетаскивании объекта над компонентом.

Событие при окончании или прерывании перетаскивания.

Событие при нажатии кнопки мыши над объектом.

Событие при перемещении указателя мыши над объектом.

Событие при отпускании нажатой кнопки мыши над объектом.

Событие при начале перетаскивания объекта.

Оконные визуальные компоненты ( самая многочисленная группа компонентов) - это компоненты, которые могут получать фокус ввода ( т.е. становиться активными для взаимодействия с пользователем) и содержать другие визуальные компоненты

Класс TWinControl

Класс TWinControl (оконное управление) - наследник класса TControl. Это базовый класс для оконных визуальных компонентов Delphi. Он содержит собственные свойства (более 30) и методы (около 100), имеющиеся у всех визуальных компонентов. Описан в

модуле Controls.

Это абстрактный класс. Нельзя создать объект этого класса.

Свойства класса TWinControl

Ниже приведен список основных свойств, определенных или переопределенных в TWinControl. Некоторые свойства, используемые в основном при разработке сложных новых классов, в него не включены.

Таблица 1. Свойства класса TWinControl

Свойство

property Brush: TBrush;

propertyClientOrigin: TPoint;

propertyClientRect: TRect;

propertyControlCount: Integer;

property Controls: TControl;

Описание

Определяет цвет и стиль заполнения фона окна. Свойство только для чтения.

Экранные координаты левого верхнего угла клиентской области компонента. Свойство только для чтения.

Содержит размер клиентской области компонента. Свойство только для чтения.

Число дочерних компонентов данного оконного элемента. Свойство только для чтения.

Массив дочерних компонентов оконного элемента. Свойство только

property Ctl3D: Boolean;

property Handle: HWND;

propertyHelpContext: THelpContext;

propertyImeMode: TImeMode; propertyImeName: String;

propertyParentCtl3D: Boolean;

propertyParentWindow: HWnd;

property Showing: Boolean;

propertyTabOrder: TTabOrder;

property TabStop: Boolean;

propertyWindowHandle: HWND;

для чтения.

Определяет, будет ли компонент выглядеть объемным или плоским.

Дескриптор оконного элемента, используемый при вызове функций API Windows. Свойство только для чтения.

Номер контекстно-зависимой встроенной справки.

Определяют обработку символов в редакторах. Обычно значения по умолчанию не изменяют.

Управляет наследованием родительского свойства Ctl3D.

Дескриптор родительского окна, не являющегося визуальным компонентом, например,TActiveXControl. Если свойство Parent не nil, то значение ParentWindow игнорируется.

Определяет, виден ли компонент в данный момент. Свойство только для чтения.

Указывает позицию компонента в последовательности табуляции.

Определяет, может ли пользователь перевести фокус на компонент клавишей табуляции.

То же самое, что Handle, но это свойство можно читать и изменять.

Класс TWinControl наследует также много свойств своих предшественников.

К оглавлению

Методы класса TWinControl

Ниже приведены основные методы, наследуемые от TWinControl и используемые в компонентах-потомках этого класса.

Таблица 2. Методы класса TWinControl

 

Метод

 

Описание

 

 

 

 

 

 

 

 

 

 

 

function CanFocus: Boolean; dynamic;

procedure ChangeScale(M, D: Integer); override;

function ContainsControl(Control: TControl): Boolean;

function ControlAtPos(const Pos: TPoint; AllowDisabled: Boolean, AllowWinControls:Boolean=False): TControl;

procedure DisableAlign;

procedure EnableAlign;

Определяет, может ли компонент получать фокус, то есть получать сообщения пользователя.

Изменяет масштаб компонента и его дочерних компонентов.

Определяет, является ли указанный компонент прямым или косвенным наследником данного оконного элемента.

Возвращает дочерний компонент, находящийся в указанной позиции.

Временно запрещает выравнивание компонентов в оконном элементе.

Отменяет действие предварительно вызванного методаDisableAlign и вызывает Realign для выравнивания компонентов.

function FindNextControl(CurControl: TWinControl; GoForward, CheckTabStop, CheckParent: Boolean): TWinControl;

function Focused: Boolean; dynamic;

procedure GetTabOrderList (List: TList);

function HandleAllocated: Boolean;

procedure HandleNeeded;

procedure Invalidate; override;

Возвращает очередной оконный компонент в последовательности табуляции.

Определяет, находится ли оконный элемент в фокусе.

Строит список дочерних компонентов в последовательности табуляции.

Проверяет наличие дескриптора окна компонента.

Создает дескриптор окна, если он до этого не существовал.

Сообщает о необходимости перерисовки компонентов.

procedure Realign;

procedure Repaint; override;

procedure ScaleBy (M, D: Integer);

procedure ScaleControls(M, D: Integer);

procedure ScrollBy (DeltaX, DeltaY: Integer);

procedure SelectFirst;

procedure SelectNext;

procedure SetBounds(ALeft, ATop, AWidth, AHeight: Integer); override;

procedure SetChildOrder(Child: TComponent; Order: Integer); override;

procedure SetFocus; virtual;

procedure SetZOrder(TopMost: Boolean); override;

procedure Update; override;

Выравнивает компоненты в оконном элементе.

Перерисовывает изображение компонента на экране с помощью Invalidate.

Масштабирует оконный элемент и все содержащиеся в нем компоненты.

Изменяет масштаб компонентов в оконном элементе, не изменяя масштаба самого оконного элемента.

Сдвигает содержимое оконного элемента.

Передает фокус дочернему компоненту, первому в последовательности табуляции.

Передает фокус компоненту, следующему в последовательности табуляции.

Задает координаты и размеры элемента.

Изменяет позицию компонента в списке дочерних компонентов.

Передает фокус элементу (активизирует его).

Перемещает компонент вверх или вниз относительно других компонентов.

Немедленная перерисовка компонента.

К оглавлению

События класса TWinControl

Перечислим основные события, реализованные в классе TWinControl.