- •1.1 Общие положения
- •1.2 Количественные оценки
- •1.3 Устройство ПК
- •1.4 Программное обеспечение
- •1.5 Автоматизированные и информационные системы
- •1.6 Разное
- •1.7 Алгоритм
- •2. PASCAL
- •2.1 Алфавит
- •2.2 Типы данных
- •2.3 Переменные
- •2.4 Константы
- •2.5 Стандартные функции
- •2.6 Выражения
- •2.7 Операторы
- •2.7.1 Оператор присваивания
- •2.7.2 Составной оператор
- •2.7.3 Условный оператор IF
- •2.7.4 Условный оператор CASE
- •2.7.5 Оператор цикла FOR
- •2.7.6 Оператор цикла REPEAT
- •2.7.7 Оператор цикла WHILE
- •2.8 Одномерные массивы
- •2.9 Многомерные массивы
- •2.10 Строки
- •2.11 Записи
- •2.12 Множества
- •2.13 Пользовательские типы
- •2.14 Файлы
- •2.15 Перечисляемый тип
- •2.16 Тип-диапазон
- •2.17 Функции и процедуры
- •2.18 Локализация имен
- •2.19 Модули
- •2.20 Операторы прерывания
- •2.21 Комментарии
- •2.22 Указатели
- •2.23 Динамические массивы Delphi
- •3. ОСНОВНЫЕ ПОЛОЖЕНИЯ ООП
- •4. БАЗОВЫЕ КЛАССЫ DELPHI
- •4.1 TObject
- •4.2 Exception
- •4.3 TList
- •4.4 TPersistent
- •4.5 TCollection
- •4.6 TCollectionItem
- •4.7 TStrings
- •4.8 TStringList
- •4.9 TGraphicsObject
- •4.10 TPen
- •4.11 TBrush
- •4.12 TCanvas
- •4.13 TGraphics
- •4.14 TPicture
- •4.15 TComponent
- •4.16 TControl
- •4.17 TWinControl
- •4.18 TGraphicControl
- •4.19 TTimer
- •4.20 TThread
- •4.21 TTreeView
- •4.22 TTreeNodes
- •4.23 TTreeNode
- •4.24 TForm
- •4.25 TMainMenu
- •4.26 TMenuItem
- •4.27 TStatusBar
- •4.28 TStatusPanels
- •4.29 TStatusPanel
- •4.30 TToolBar
- •4.31 TToolButton
- •4.32 TActionList
- •4.33 TAction
62
4.14 TPicture
Класс TPicture является наследником TPersistent и служит базовым классом для объектов типа “иконка”, “растровое изображение”, “метафайлы”
4.15 TComponent
Класс TComponent является наследником TPersistent и предком всех невизуальных компонентов, который:
•позволяет добавить компонент в набор компонентов Delphi и управлять им в режиме разработки программы;
•обеспечивает возможность компоненту включать в себя другие компоненты и управлять ими;
•расширяет возможности по работе с потоками.
Некоторые свойства и методы класса TComponent:
•property Name: TComponentName; – описывает имя компонента для обеспечения возможности обращения к нему. Подчиняется всем правилам, применяемым при выборе имен переменных, констант, типов и т.д.;
•property Tag: Longint; – свойство, не используемое Delphi. Может применяться, например, для хранения информации о состоянии компонента;
•property Owner: TComponent; – позволяет установить владельца данного компонента;
•property ComponentIndex: Integer; – определяет положение компонента в списке компонентов владельца;
•property ComponentCount: Integer; – описывает число компонентов, для которых данный компонент является владельцем;
•property Components[Index: Integer]: TComponent; – позволяет получить дос-
туп к одному из компонентов, которыми владеет данный компонент, по его индексу;
•function FindComponent(const AName: string): TComponent; – позволяет полу-
чить доступ к одному из компонентов, которыми владеет данный компонент, по его имени;
•procedure InsertComponent(AComponent: TComponent); – устанавливает дан-
ный компонент владельцем компонента AComponent; Объекты класса TComponent обычно не создаются.
4.16 TControl
Абстрактный класс TControl является наследником TComponent и предком всех визуальных компонентов. Описывает общие для всех визуальных компонентов свойства, методы и события. Многие из свойств и методов данно-
63
го класса являются защищенными, а их опубликование происходит в классахпотомках.
Некоторые свойства, методы и события класса TControl:
•property Align: TAlign; – задает метод выравнивания компонента в владельце;
•property AutoSize: Boolean; – позволяет компоненту корректировать свой размер в соответствии с содержимым;
•property Caption: TCaption;,
property Text: TCaption; – задают текстовые строки для идентификации компонента, например, заголовок, метку. Как правило, у компонента опубликовано только одно из этих свойств;
•property ClientHeight: Integer;, property ClientWidth: Integer;, property ClientOrigin: TPoint;
property ClientRect: TRect; – определяют размеры и положение области, в которой могут располагаться компоненты, которыми владеет данный компонент;
•property Color: TColor; – определяет цвет компонента;
•property Enabled: Boolean; – задает, может ли компонент реагировать на мышь, клавиатуру и события таймера;
•property Font: TFont; – определяет шрифт компонента;
•property Height: Integer;, property Left: Integer;, property Top: Integer;,
property Width: Integer; – определяют размеры и положение компонента во владельце;
•property Parent: TWinControl; – визуальный владелец данного компонента, т.е. компонент, внутри которого отображается данный компонент. Не следует путать это свойство со свойством Owner, которое используется, например, при разрушении объектов.
•property PopupMenu: TPopupMenu; – позволяет задать всплывающее меню для компонента, вызываемое, как правило, при нажатии на компоненте правой (второй) кнопки мыши;
•property Visible: Boolean; – задает, видим ли компонент на экране;
•procedure Hide; – делает компонент невидимым;
•procedure Show; – делает компонент видимым;
•procedure SetBounds(ALeft, ATop, AWidth, AHeight: Integer); virtual; – задает размеры и положение компонента внутри владельца;
•property OnClick: TNotifyEvent; – определяет действия объекта при нажатии на нем, например левой (первой) кнопкой мыши;
•property OnDblClick: TNotifyEvent; – определяет действия объекта при двой-
ном нажатии на нем левой (первой) кнопкой мыши;
•property OnResize: TNotifyEvent; – определяет действия объекта при изменении размера;
•property OnMouseDown: TMouseEvent; – определяет действия объекта при нажатии на нем клавиши мыши;
64
•property OnMouseUp: TMouseEvent; – определяет действия объекта при от-
пускании на нем клавиши мыши;
•property OnMouseMove: TMouseMoveEvent; – определяет действия объекта при перемещении над ним клавиши мыши;
4.17TWinControl
Абстрактный класс TWinControl является наследником TControl и предком всех визуальных компонентов, которые:
•могут получать фокус во время работы приложения;
•могут быть присвоены другим компонентам как Parent;
•могут иметь заголовок окна – идентификатор окна Windows; Некоторые свойства, методы и события класса TWinControl:
•property BorderWidth: TBorderWidth; – ширина рамки компонента;
•property Brush: TBrush; – определяет цвет и тип фона компонента;
•property Controls[Index: Integer]: TControl; – позволяет получить доступ к компоненту, для которого данный компонент Parent;
•property TabOrder: TTabOrder; – определяет последовательность перехода от компонента к компоненту при нажатии клавиши TAB;
•property TabStop: Boolean; – указывает, можно ли останавливаться на компоненте при нажатии клавиши TAB;
•procedure SetFocus; virtual; – переводит фокус на данный компонент;
•property OnKeyDown: TKeyEvent; – определяет действия при нажатии клавиши на клавиатуре (с учетом клавиш Shift, Alt, Ctrl), когда объект имеет фокус;
•property OnKeyUp: TKeyEvent; – определяет действия при отпускании клавиши на клавиатуре (с учетом клавиш Shift, Alt, Ctrl), когда объект имеет фокус;
•property OnKeyPress: TKeyPressEvent; – определяет действия при нажатии клавиши на клавиатуре (без учетом клавиш Shift, Alt, Ctrl), когда объект имеет фокус;
4.18TGraphicControl
Абстрактный класс TGraphicControl является наследником TControl и предком всех визуальных компонентов, которые не имеют заголовок окна, например, изображение, метка.
Свойства и методы класса TGraphicControl:
•property Canvas: TCanvas; – определяет поверхность на которой производится построение изображения на компоненте;
•procedure Paint; virtual; – описывает процедуру построения изображения на компоненте.
65
4.19 TTimer
Класс TTimer является наследником TComponent и служит для организации потоков команд. Имеет низкий приоритет выполнения.
Свойства, методы и события класса TTimer:
•property Enabled: boolean; – включение и выключение таймера;
•property onTimer: TNotifiEvent; – процедура, описывающая действия при срабатывании таймера;
•property Interval: cardinal; – определяет время (в ms), через которое срабатывает таймер.
4.20 TThread
Абстрактный класс TThread является наследником TObject и служит для организации потоков команд.
Свойства, методы и события класса TThread:
•property FreeOnTerminate: boolean; – указание на саморазрушение при за-
вершении процедуры выполнения;
•property Priority: TThreadPriority; – задание приоритета выполнения дейст-
вий;
•property Suspended: boolean; – проверка на паузу в работе потока;
•property Terminated: boolean; – указаний на необходимость завершения потока;
•constructor Create(CreateSuspended : boolean); – при создании указывается,
требуется ли поток установить в режим “пауза”;
•procedure Execute: virtual; abstract; – метод, описывающий действия, которые должен выполнять поток. Данный метод должен проверять завершение работы потока и прервать свою работу при получении команды “завершение”;
•procedure Resume; – запустить после “паузы”;
•procedure Suspend; – включить “паузу”;
•procedure Synchronize(Method : TThreadMethod); – синхронизация выполне-
ния действий с VCL;
•procedure Terminate; – дать команду на завершение работы потока;
Пример работы потока.
TMyThread = class(TThread) protected
x : integer;
constructor Create(CreateSuspended: Boolean); procedure Execute; override;
procedure ThreadSyn; end;
var
MyThread : TMyThread;