- •1. Пользователи класса не должны видеть подробности, которыми оперируют разработчики.
- •2. Прямой доступ к полям хотя и возможен, но не всегда желателен, т.К. Бесконтрольность может привести к ошибкам.
- •Var o1: TmyCl;
- •Var s:string;
- •Var MyOb:TmyCl;
- •Var o1: Tpar; o2: Tchild;
- •Var figure:Tfigure; circle:Tcircle;
- •Var o1,o2: TmyCl; n:integer;
- •Var мan: tМan;
- •Var par: Tpar; child: Tchild;
- •If man is Tman then …;//определение типа
- •Var cIrcle:tcIrcle; Rectangle:tRectangle;
- •Var MetaClass: TmetaClass;//может хранить в себе объект любого класса потомка Tobject Procedure UseObject(Obj: TmetaClass);
- •Любой компонент Делфи является собственностью другого компонента.
- •При разрушении компонента владельца автоматически разрушается принадлежащие ему компоненты.
- •X:Longint;
- •Visible:Boolean; - отображается ли элемент управления на экране.
- •0: (Left, top, right, bottom: integer);
- •1: (TopLeft, BottomRight: tPoint);
- •Interval: cardinal; - интервал в милисекундах после которого начинается событие OnTimer.
- •Items:tString; - задает элементы списка.
- •Items:tString; - задает элементы списка.
- •Items:tString;-содержит список названий переключателей.
- •1. Контроль обращений к данным
- •2. Контроль вычислений
- •3. Контроль передачи управления
- •4. Контроль межмодульных интерфейсов
0: (Left, top, right, bottom: integer);
1: (TopLeft, BottomRight: tPoint);
end;
МЕТОДЫ
Function CanFocus:Boolean;dynamic; - может ли элемент получить фокус.
Function Focused:Boolean;dynamic; - получил ли оконный элемент фокус ввода.
Procedure SetFocus;virtual;
передает фокус ввода данному оконному элементу.
Билет 24.
{ Класс TWinControl
Потомок TControl – является базовым для создания оконных элементов управления.
Такие элементы во время выполнения программы могут получать фокус ввода, реагируют на события, возникающие при использовании клавиатуры. Наличие окна позволяет активизировать элемент управления во время выполнения программы.
С каждым оконным элементом управления связано окно Windows, определяемое специальным числовым идентификатором – дескриптором окна.
В этом классе завершается определение характеристик связи родительский дочерний, начатое в TControl (только оконный элемент может быть контейнером для содержания других компонентов). }
События клавиатуры TwinControl.
TKeyPressEvent = procedure (Sender:TObject; var Key:Char ) of object; Property OnKeyPress: TKeyPressEvent; - событие возникает при нажатии символьной клавиши. Параметр Key содержит Ansi код нажатой клавиши.
TKeyEvent = procedure (Sender:TObject; var Key:Word; Shift:TShiftState) of object; Property OnKeyDown: TKeyEvent; Property OnKeyUp: TKeyEvent; - событие возникает при нажатии (отпускании) клавиши. Sender – содержит ссылку на активный элемент управления. Key – код нажатой клавиши. Shift – ssLeft, ssRight, ssMiddle, SsShift, ssAlt, ssCtrl, ssDouble одновременно нажаты клавиши Shift, Alt, Ctrl
События активизации оконного элемента и потери фокуса.
Property OnEnter: TNotifyEvent; - возникает, когда оконный элемент получает фокус.
Property OnExit: TNotifyEvent; - возникает, когда оконный элемент теряет фокус.
Билет 25.
Класс TGraphicControl.
Потомки этого класса имеют общее название – графические элементы управления.
Потомки TGraphicControl: фокус ввода не получают, не могут быть родительскими для других, реагируют на события мыши.
Их назначение – вывод информации на экран, улучшение внешнего вида.Представители: Label, Shape- фигура, PaintBox – паненль рисования, Imege.
Property Canvas: TCanvas; - (канва - холст) средства предназ-наченные для создания на экране графического изображения.
Procedure Paint; - рисует изображение графического элемента управления. В потомках обычно переопределяется, чтобы учесть специфику.
Билет 26.
Метка Tlabel
Иерархия TObject-TPersistent-TComponent-TControl-TGraphicControl-TcustomLabel. Страница палитры Standard.
Предназначена для вывода на экран текстовой информации (названия разъяснения).
Основным свойством является caption (TControl). Туда помещается выводимый текст.
Label1.caption:=‘выводимый текст’;
Обрабатывает события связанные с использованием мыши.
По умолчанию для метки основным является событие OnClick.
Текстовые компоненты Label, Edit, Memo
Type TAlignment = (taLeftJustify, taRightJustify, taCenter);
Property Alignment: TAlignment;- выравнивание текста в по горизонтали компоненте. По умолчанию слева.
Property AutoSize: Boolean;
Type TtextLayout=(tlTop,tlCenter,tlBottom);
Property Layout: TtextLayout; - свойство определяет положение метки (выравнивание) по вертикали
Property Transparent: Boolean; - если ИСТИНА, то фон метки прозрачный.
Property WordWrap: Boolean; - Истина, то после заполнения текущей строки будет происходить перенос на следующую.
Билет 27.
Компонент Timer.
Страница System.
Предназначен для инициирования какой либо операции через заданные промежутки времени. Невизуальный компонент.
Свойства
Enabled: Boolean; - если true, то реагирует на собственное событие OnTimer.