- •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
58
•связывать с каждой строкой какой-либо объект. Некоторые свойства и методы класса TStrings:
•property Count: Integer; – определяет количество строк в списке;
•property Objects[Index: Integer]: TObject; – организует доступ к объекту, свя-
занному с конкретной строкой;
•property Strings[Index: Integer]: string; – организует доступ к заданной строке;
•function Add(const S: string): Integer; virtual; – добавляет строку в конец спи-
ска;
•function AddObject(const S: string; AObject: TObject): Integer; virtual; – добав-
ляет строку в конец списка и связывает с ней заданный объект;
•procedure AddStrings(Strings: TStrings); virtual; – добавляет набор строк в ко-
нец списка;
•procedure Clear; virtual; abstract; – удаляет все строки из списка и разрушает связи со всеми объектам;
•procedure Delete(Index: Integer); virtual; abstract; – удаляет заданную строку из списка;
•function IndexOf(const S: string): Integer; virtual; – позволяет получить индекс заданной строки;
•function IndexOfObject(AObject: TObject): Integer; – позволяет получить ин-
декс строки, с которой связан заданный объект;
•procedure Insert(Index: Integer; const S: string); virtual; abstract; – добавляет новую строку в заданное место;
•procedure InsertObject(Index: Integer; const S: string; AObject: TObject); – до-
бавляет новую строку в заданное место и связывает с ней заданный объект;
•procedure LoadFromFile(const FileName: string); virtual; – позволяет загрузить набор строк из файла;
•procedure SaveToFile(const FileName: string); virtual; – позволяет сохранить набор строк в заданном файле;
Первый элемент списка имеет индекс 0, второй - 1 и т.д.
4.8 TStringList
Класс TStringList является наследником TStrings и позволяет наряду с функциями предка:
•сортировать строки;
•проверять дублирование строк;
•генерировать события при изменении списка строк. Некоторые свойства и методы класса TStringList:
•property Duplicates: TDuplicates; – определяет поведение списка при обнаружении дубляжа строк;
•property Sorted: Boolean; – определяет, требуется ли сортировать строки;
•procedure Sort; virtual; – вызов сортировки, когда свойство Sorted имеет зна-
чение False;
59
•property OnChange: TNotifyEvent; – определяет действия, выполняемые после изменения списка строк;
•property OnChanging: TNotifyEvent; – определяет действия, выполняемые пе-
ред изменением списка строк.
4.9TGraphicsObject
Абстрактный класс TGraphicsObject является наследником TPersistent и служит базой для объектов, в которые входят графические объекты Windows:
TBrush, TFont и TPen.
Класс TGraphicsObject предоставляет наследникам механизм реагирования на изменение в свойствах графического объекта:
•property OnChange: TNotifyEvent; – описывает действия, выполняемые сразу после изменения свойств графического объекта.
4.10 TPen
Класс TPen является наследником TGraphicsObject и используется для рисования линий и границ контуров на поверхности рисования TCanvas.
Некоторые свойства и методы класса TPen:
•property Color: TColor; – определяет цвет рисования;
•property Mode: TPenMode; – определяет способы комбинирования цвета линии с цветом фона;
•property Style: TPenStyle; – определяет тип линии (сплошная, штриховая и т.д.);
•property Width: Integer; – определяет ширину линии.
4.11 TBrush
Класс TBrush является наследником TGraphicsObject и используется для заполнения замкнутых областей.
Некоторые свойства и методы класса TBrush:
•property Bitmap: TBitmap; – описывает внешнее изображение, используемое в качестве образца заполнения;
•property Color: TColor; – определяет цвет заполнения;
•property Style:TBrushStyle; – определяет тип образца заполнения.
60
4.12 TCanvas
Класс TCanvas является наследником TPersistent и служит базой для создания поверхностей рисования у объектов. Он:
•предоставляет объектов TBrush, TFont и TPen;
•позволяет рисовать и заполнять линии и контуры;
•позволяет выводить текст;
•реагировать на изменения в текущем изображении. Некоторые свойства и методы класса TCanvas:
•property Brush: TBrush; – определяет инструмент заполнения;
•property Font: TFont; – определяет формат шрифта вывода надписей;
•property Pen: TPen; – определяет инструмент рисования линий и контуров;
•property ClipRect: TRect; – определяет область рисования. Если вывод изображения происходит за пределами данной области, то эта часть изображения не выводится;
•property CopyMode: TCopyMode default cmSrcCopy; – определяет режим на-
ложения изображения на поверхность рисования;
•property PenPos: TPoint; – определяет текущую позицию инструмента Pen;
•procedure Arc(X1, Y1, X2, Y2, X3, Y3, X4, Y4: Integer); – процедура рисования дуги. X1, Y1, X2, Y2 – область рисования эллипса, X3, Y3, X4, Y4 – координаты точек, в которые проводятся из центра эллипса воображаемые линии. Пересечение этих линий с эллипсом дает начало и конец дуги. Дуга берется по направлению против часовой стрелки;
•procedure Chord(X1, Y1, X2, Y2, X3, Y3, X4, Y4: Integer); – аналогична дуге,
только соединяет прямой концы дуги;
•procedure Pie(X1, Y1, X2, Y2, X3, Y3, X4, Y4: Longint); – аналогично дуге,
только соединяет концы дуги с центром эллипса;
•procedure Draw(X, Y: Integer; Graphic: TGraphic); – выводит изображение на поверхность рисования. X, Y – координаты левого верхнего угла изображения;
•procedure StretchDraw(const Rect: TRect; Graphic: TGraphic ); – выводит изо-
бражение на поверхность рисования, вписывая его в заданную область.
•procedure Ellipse(X1, Y1, X2, Y2: Integer); – процедура рисования эллипса,
вписанного в прямоугольник X1, Y1, X2, Y2;
•procedure FillRect(const Rect: TRect); – процедура построения закрашенного прямоугольника без границей;
•procedure FloodFill(X, Y: Integer; Color: TColor; FillStyle: TFillStyle); – проце-
дура заполнения произвольной области. FillStyle описывает тип заполнения (граница, цвет);
•procedure FrameRect(const Rect: TRect); процедура построения незакрашенно-
го прямоугольника с границей;
•procedure LineTo(X, Y: Integer); – процедура построения линии из текущей в заданную точку;
61
•procedure MoveTo(X, Y: Integer); – процедура перемещения текущей точки рисования;
•procedure Polygon(Points: array of TPoint); – процедура построения серии ли-
ний с соединение концов;
•procedure Polyline(Points: array of TPoint); – процедура построения серии ли-
ний без соединения концов;
•procedure Rectangle(X1, Y1, X2, Y2: Integer); – процедура построения закра-
шенного прямоугольника с границей;
•procedure RoundRect(X1, Y1, X2, Y2, X3, Y3: Integer); – процедура построения закрашенного прямоугольника с границей и сглаженными углами. Углы сглаживаются по эллипсу, вписанному в область X1, Y1, X3, Y3;
•procedure TextOut(X, Y: Integer; const Text: string); – вывод текста в заданной позиции;
•function TextHeight(const Text: string): Integer; – получение высоты текста;
•procedure TextRect(Rect: TRect; X, Y: Integer; const Text: string); – вывод тек-
ста в заданной позиции, но с ограничением по области вывода;
•function TextWidth(const Text: string): Integer; – получение ширины текста;
•property OnChanging: TNotifyEvent; – определяет действия, выполняемые пе-
ред изменением изображения.
4.13TGraphics
Абстрактный класс TGraphics является наследником TPersistent и служит базовым классом для объектов типа “иконка”, “растровое изображение”, “метафайлы” c возможностью хранить и показывать изображения. Свойства класса TGraphics обеспечивают получение информации о состоянии и размерах изображения.
Для работы с изображением указанных типов используются специализированные классы TBitmap, TIcon или TMetafile. В противном случае используется класс TPicture.
Некоторые свойства и методы класса TGraphics:
•property Height: Integer; – определяет высоту изображения;
•property Modified: Boolean; – определяет, было ли изображение изменено;
•property Transparent: Boolean; – определяет, используется ли прозрачность изображения;
•property Width: Integer; – определяет ширину изображения;
•procedure LoadFromFile(const FileName: string); virtual; – загрузка изображе-
ния из файла;
•procedure SaveToFile(const FileName: string); virtual; – сохранить изображе-
ние в файл.