Знакомство со средой программирования Delphi
Вид материала | Документы |
- Пояснительная записка, 185.11kb.
- Язык программирования Паскаль. Знакомство со средой программирования Турбо Паскаль., 280.22kb.
- Структура программы на языке Turbo Pascal, 26.15kb.
- Программа курса " Азы программирования", 26.19kb.
- Программа дисциплины "Технологии интерактивных систем" Направление, 46.72kb.
- Задачи курса: 1) Приобретение навыков работы в среде системы визуального программирования, 1668.59kb.
- Учебная программа курса «основы программирования в среде «Delphi» ( 9 класс, 86.93kb.
- Программа дисциплины Языки и технологии программирования Семестры, 20.19kb.
- Задачи работы Научиться создавать программы на языке Turbo Pascal с использованием, 598.05kb.
- Реферат з курсу, 57.9kb.
Таблица 1 Свойства класса TComponent
Свойство | Назначение |
Name | идентификатор компонента |
Tag | четырехбайтовое целое свойство, которое программист может использовать по своему усмотрению |
От класса TControl порождаются все видимые визуальные компонента и наследуют свойства, связанные расположением и внешним видом компонента. Эти свойства можно разбить на несколько групп.
Таблица 2 Размер и местоположение компонента
Свойство | Назначение |
Top | местоположение левого верхнего угла компонента по вертикали |
Left | местоположение левого верхнего угла компонента по горизонтали |
Height | высота компонента |
Width | ширина компонента |
Таблица 3 Выравнивание и масштабирование
Свойство | Назначение |
Align | выравнивание компонента относительно границ родительского компонента |
Alignment | выравнивание надписи на компоненте |
Anchors | фиксация компонента по сторонам родительского компонента |
Constraints | сложное свойство, определяющее максимально и минимально допустимые размеры компонента |
AutoSize | логическое свойство, разрешающее или запрещающее автоматическое изменение размеров компонента в соответствии с размером его содержимым |
Таблица 4 Внешний вид
Свойство | Назначение |
Color | цвет компонента |
Cursor | вид курсора при наведении указателя мыши на компонент |
Caption | надпись на компоненте |
Font | сложное свойство, определяющее тип шрифта надписи |
Visible | логическое свойство, определяющее видимость компонента |
PopupMenu | логическое свойство, разрешающее или запрещающее использование всплывающего меню |
Enabled | логическое свойство, определяющее доступность компонента |
Hint | текст подсказки, которая появляется при задержке курсора мыши на компоненте |
ShowHint | логическое свойство, разрешающее или запрещающее использование подсказки |
- События в Delphi
Одна из ключевых целей среды визуального программирования – скрыть от пользователя сложность программирования в Windows. При этом, однако, хочется, чтобы такая среда не была бы упрощена до такой степени, что программисты потеряют доступ к самой операционной системе.
Программирование, ориентированное на события – неотъемлемая черта Windows. Delphi предоставляет полный доступ к подструктуре событий, совершаемых в операционной среде Windows. С другой стороны, Delphi упрощает программирование обработчиков таких событий.
Объекты из библиотеки визуальных компонент (VCL) Delphi, равно как и объекты реального мира, имеют свой набор свойств и свое поведение - набор откликов на события, происходящие с ними. Список событий для данного объекта, на которые он реагирует, можно посмотреть, например, в Инспекторе Объектов на странице событий. (На самом деле, на этой странице представлен список свойств, которые представляют из себя ссылки на процедуры-обработчики событий.) Среди набора событий для различных объектов из VCL есть как события, портируемые из Windows (например, события, которые генерируются мышью или клавиатурой), так и события, порождаемые в результате прогона приложения путем изменения свойств объектов).
Поведение объекта определяется тем, какие обработчики и для каких событий он имеет. Создание приложения в Delphi состоит из настройки свойств используемых объектов и создания обработчиков событий.
Простейшие события, на которые иногда нужно реагировать - это, например, события, связанные с мышкой (они есть практически у всех видимых объектов) или событие OnClick для кнопки TButton. Все события в Delphi принято предварять префиксом on: onCreate, OnMouseMove, OnPaint и так далее. Щелкнув в Инспекторе объектов на странице Events в поле любого события, можно получить в программе заготовку метода нужного типа. При этом его имя будет состоять из имени текущего компонента и имени события (без префикса On), а относиться он будет к текущей форме. Например, обработчик щелчка левой кнопки мыши на форме будет выглядеть так:
procedure TForm1.Button1Click(Sender: TObject);
begin
end;
Поскольку события — это свойства объекта, их значения, можно изменять в любой момент во время выполнения программы. Эта замечательная возможность называется делегированием. Можно в любой момент взять способы реакции на события у одного объекта и присвоить (делегировать) их другому:
Object1.OnMouseMove := Object2.OnMouseMove;
Принцип делегирования позволяет избежать трудоемкого процесса порождения новых дочерних классов для каждого специфического случая, заменяя его простой подстановкой процедур. Можно при необходимости выбирать один из нескольких возможных вариантов обработчиков событий.
- Некоторые общие события компонентов
Для большинства видимых визуальных компонентов, т.е. потомков класса TControl, определен набор обработчиков событий, связанных с мышью. Для выполнения какого-либо действия с помощью щелчка левой кнопки мыши для большинства случаев достаточно запрограммировать обработчик событий OnClick, а для реакции на двойной щелчок используется событие OnDbClick. Для более совершенного управления мышью лучше использовать обработчики следующих событий:
- OnMouseDown. Событие вызывается при нажатии любой кнопки мыши.
- OnMouseMove. Событие вызывается при перемещении курсора мыши.
- OnMouseUp. Событие вызывается при отпускании любой кнопки мыши.
Процедуры обработки этих событий получают следующие параметры:
- Sender. Параметр представляет объект, который получил это событие (т. е. на каком компоненте щелкнули мышью).
- Button. Параметр имеет одно из трех значений: mbRight, mbLeft, mbMiddle и используется для определения кнопки мыши, которую нажал пользователь.
- Shift. Множество, которое может содержать следующие элементы: ssShift, ssCtrl, ssAlt, ssLeft, ssRight, ssMiddle, ssDouble. Используется для определения нажатия клавиш
, , (или комбинации этих клавиш) в момент щелчка мышью, а также для определения какой кнопкой мыши щелкнул пользователь.
- X, Y. Координаты указателя мыши в пикселях относительно клиентской области окна с координатами (0,0) в верхнем левом углу.
- X, Y. Координаты указателя мыши в пикселях относительно клиентской области окна с координатами (0,0) в верхнем левом углу.
Необходимо отметить, что событие OnClick возникает после события OnMouseDown, но перед событием OnMouseUp. Событие OnDbClick генерируется после события OnMouseUp.
Р
Рисунок 5
ассмотрим пример использования обработчиков событий, связанных с мышью. При нажатии правой кнопкой мыши в заголовке формы появляются координаты указателя мыши, при отпускании кнопки мыши заголовок формы очищается. Для этого создадим следующие обработчики
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
If (Button=mbRight)
then Caption:=IntToStr(X)+’, ’+IntToStr(Y);
end;
procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Caption:='';
end;
Визуальные компоненты, которые являются потомками класса TWinControl, кроме обработчиков событий, связанных с мышью, также обладают набором обработчиков событий от клавиатуры.
- OnKeyDown Событие возникает при нажатии любой клавиши клавиатуры.
- OnKeyUp Событие возникает при отпускании клавиши клавиатуры
- OnKeyPress Данное событие генерирует после OnKeyDown, но перед OnKeyUp
Процедуры обработки событий OnKeyDown и OnKeyUp получают следующие параметры:
- Sender. Параметр представляет объект, который получил это событие (т. е. какой компонент в данный момент имеет фокус ввода).
- Key. Параметр целого типа содержит виртуальный код клавиши, т.е. специальной константы, которая определена для каждой клавиши клавиатуры. Для буквенно-цифровых клавиш виртуальный код совпадает с кодом символа.
- Shift. Множество, которое может содержать следующие элементы: ssShift, ssCtrl, ssAlt, ssLeft, ssRight, ssMiddle, ssDouble. Используется для определения нажатия клавиш
, , (или комбинации этих клавиш), а также для определения какой кнопкой мыши щелкнул пользователь.
Для процедуры обработки события OnKeyPress имеется такой набор параметров.
- Sender. Параметр представляет объект, который получил это событие (т. е. какой компонент в данный момент имеет фокус ввода).
- Key. Параметр символьного типа содержит символ, который получается в результате нажатия клавиш клавиатуры.
Таким образом, события OnKeyDown и OnKeyUp перехватывают нажатия большинства клавиш клавиатуры, в то время как событие OnKeyPress позволяет обрабатывать только нажатие буквенно-цифровых клавиш. При этом получаемый символ Key учитывает выбранный язык (раскладку клавиатуры) и нажатую клавишу Shift.
Для потомков класса TWinControl определены события OnEnter и OnExit, которые возникают в момент получения (потери) компонентом фокуса ввода.
Рассмотрим следующий пример использования событий, связанных с клавиатурой. При нажатии комбинации клавиш Shift+А в заголовке формы пишется ‘Ok’. Этого эффекта можно достигнуть двумя способами. Первый способ состоит в создании следующего обработчика
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
If (Shift=[ssShift]) and (Key=Ord(‘A’)) then Caption:=’Ok’;
end;
Другой способ заключается в использовании события OnKeyPress.
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
If key='A' then Caption:='Оk';
end;
Однако необходимо заметить, что этот обработчик будет срабатывать только, если выбран английский язык и отключена клавиша Caps Lock, поскольку только в этом случае возможно получить символ А путем нажатия комбинации Shift+А.
- Контрольные вопросы
- Какие события используются для управления курсором мыши?
- Каким образом можно получить координаты курсора мыши на форме?
- Как можно определить какая именно клавиша мыши была нажата?
- Какие события используются для получения комбинации нажатых или отпущенных клавиш?
- Какое событие позволяет определить нажатый символ?
- Какие свойства общие для всех компонентов?
- Какие визуальные компоненты называют невидимыми?
- Какие свойства компонента отвечают за его местоположение на форме?
- Каким образом можно изменять свойства компонентов?
- Класс TForm
- Роль формы в приложении
- Роль формы в приложении
Классическое приложение Windows обязательно имеет хотя бы одно окно, при этом окно приложения должно уметь выполнять целый ряд важных операций: правильно отображать себя на экране, уметь взаимодействовать с другими окнами и операционной системой, управлять размещенными на нем элементами управления, реагировать на разнообразные события. В среде разработки Delphi понятие окна приложения совмещено с понятием формы.
Формой называется окно приложения на этапе разработки. На этапе разработки окно должно обладать целым рядом ценных свойств, которые обеспечивают процесс программирования и обязаны исчезнуть при запуске приложения. Самые важные из них заключаются в том, что форма умеет взаимодействовать с инструментами среды разработки (Палитрой компонентов, Инспектором объектов и т. д.) и размещенными на ней компонентами. Первое из названных свойств обеспечивается возможностями, унаследованными от базового класса иерархии VCL TComponent. Второе свойство обеспечено механизмами самого класса формы. Кроме этого, форма обеспечивает еще целый ряд удобных и полезных для разработчика функций. Это разметка рабочей области, возможность выравнивания компонентов и т. д. Для хранения каждой формы проекта используются два файла. Файл с расширением dfm хранит описание свойств формы и размещенных на ней компонентов. Для хранения исходного кода класса формы и ее компонентов предназначен файл модуля с расширением раs.
Формы играют исключительно важную роль в процессе создания приложения. Они обеспечивают создание пользовательского интерфейса с одной стороны, и хранение программной логики приложения — с другой. Хотя форма и является потомком класса TComponent, она не присутствует в Палитре компонентов. Для создания новой формы проекта необходимо использовать команду File / New Form из главного меню среды.
С точки зрения исходного кода, любой размещенный на форме компонент представляет собой всего лишь новую переменную объектного типа, объявленную в классе формы. Это объявление осуществляется автоматически в момент размещения компонента на форме. В результате в модуле этой формы сразу же становятся доступными все свойства и методы этих компонентов. Форма, на которой находится компонент, становится его владельцем. Форма, как владелец размещенных на ней компонентов, позволяет эффективно управлять ими на этапе выполнения приложения. Для этого класс формы имеет ряд свойств и методов, которые позволяют получить доступ к любому компоненту. Например, программными средствами можно передавать фокус ввода от одного элемента управления другому; выполнять для всех компонентов или их любого подмножества заданную последовательность действий.
В зависимости от настроек свойств, формы в проекте могут играть разные роли. Форма может быть главной формой проекта. Для этого необходимо, чтобы форма в файле проекта создавалась первой. В этом случае она автоматически появляется при запуске приложения, а ее закрытие приводит к завершению работы всей программы, остальные формы в проекте являются дочерними. Дочерние формы равноправны между собой. Их можно запускать в модальном и в немодальном режиме. Форма в модальном режиме не позволяет передавать фокус управления элементам управления других форм приложения. Это можно сделать только после закрытия формы. Свободное переключение возможно между формами, работающими в немодальном режиме. Также формы в приложении различаются по стилю оформления. Это может быть классическое окно с заголовком, рамкой, системными меню и кнопками или диалог и т. д.
Методы-обработчики формы также играют важную роль при создании приложений. Практика программирования показывает, что практически в каждой форме имеются операции, которые необходимо выполнять при создании, открытии формы и ее закрытии и т.д.
- Свойства класса TForm
Одним из предков класса TForm является класс TWinControl, поэтому все свойства этого класса наследуются формой. Приведем свойства, которые являются специфическими для формы.
Таблица 5Свойства TForm
Свойство | Назначение |
FormStyle | перечислимое свойство, которое определяет тип окна |
FsNormal | обычное окно |
FsStayOnTop | окно, остающееся поверх других даже в неактивном состоянии |
BorderIcons | сложное свойство, определяющее набор кнопок в заголовке окна. Кнопка закрытия не описана, так как она присутствует всегда при наличии у формы заголовка. |
biSystemMenu | для вызова системного меню |
biMinimize | для сворачивания окна |
biMaximize | для разворачивания окна |
biHelp | для вызова помощи |
BorderStyle | перечислимое свойство, которое задает тип границы окна |
bsNone | Форма представляет собой прямоугольник без рамки, заголовка и системных кнопок в заголовке. Размеры такой формы нельзя изменить без специальных приемов |
bsSingle | Стандартное окно без возможности изменения размеров. Набор системных кнопок зависит от свойства BorderIcons |
bsSizeable | Значение по умолчанию. Стандартная форма с возможностью изменения размеров. Набор системных кнопок зависит от свойства BorderIcons |
bsDialog | Обрамление стандартного диалогового окна. В наборе системных кнопок отсутствуют biSystemMenu, biMinimize и biMaximize |
bsToolWindow | Обрамление панели инструментов. Идентично стилю bssingle, но с уменьшенной высотой заголовка и системными элементами |
bsSizeToolWin | Обрамление панели инструментов. Идентично стилю bsSizeable, но с уменьшенной высотой заголовка и системными элементами |
WindowState | Перечислимое свойство, определяющее состояние окна |
wsNormal | нормальное состояние |
wsMinimized | свернутое состояние |
wsMaximized | развернутое состояние |
Icon | свойство задает значок, с помощью которым которого форма в свернутом состоянии отображается на панели задач |
Menu | свойство определяет текущее главное меню для формы |
PopupMenu | свойство определяет текущее всплывающее меню для формы |
Position | свойство задает размеры и положение формы на экране при работе приложения |
poDesigned | Принять те значения положения и размеров, которые были определены во время разработки приложения |
poDefault | Принять положение и размеры, определенные средой Windows по умолчанию |
poDefaultPosOnly | Принять только положение, определенное средой Windows по умолчанию |
poDefaultSizeOnly | Принять только размеры, определенные средой Windows пo умолчанию |
poScreenCenter | Поместить окно по центру экрана. В случае наличия нескольких мониторов в системе, форма размещается в центре монитора по умолчанию |
poDesktopCenter | Поместить окно по центру рабочего стола (в том числе составленного из нескольких мониторов) |
poMainFormCenter | Поместить окно по центру главной формы приложения |
poOwnerFormCenter | Поместить окно по центру формы владельца |
HorzScrollBar VertScrollBar | сложные свойства, определяющие внешний вид полос прокрутки (горизонтального и вертикального) |
AutoScroll | автоматическое размещение полос прокрутки на форме |
- События формы
При создании и отображении формы происходят пять следующих событий
Таблица 6 Cобытия TForm при создании и отображении формы
Событие | Назначение |
OnCreate | Возникает при создании окна, но до его появления на экране. Позволяет распределить ресурсы и провести необходимую инициализацию компонентов и форм. |
OnShow | Возникает при появлении окна на экране. К этому времени все компоненты и формы созданы и инициализированы |
OnResize | Возникает при изменении размеров окна |
OnActivate | Возникает в момент активизации окна (при получении фокуса ввода) |
OnPaint | Возникает при необходимости прорисовки окна |
Событие OnCreate происходит один раз за все время существования формы, прочие события могут вызываться неоднократно. При закрытии и уничтожении формы также генерируются пять событий.
Таблица 7 Cобытия TForm при закрытии и уничтожении формы
Событие | Назначение |
OnCloseQuery | Возникает перед закрытием окна, в ответ на действия, закрывающие окно. Обработчик получает логическую переменную CanClose, определяющую может ли форма быть закрыта. |
OnClose | Возникает перед закрытием окна. Параметр Action уточняет необходимые действия: саNоnе – не закрывать окно; caHide – спрятать окно; caFree – уничтожить окно; caMimimize – минимизировать окно |
OnDeactivate | Возникает при передаче активности другому окну той же программы |
OnHide | Возникает перед исчезновением окна |
OnDestroy | Возникает перед уничтожением окна. Обычно используется для освобождения ресурсов, выделенных в OnCreate. |
Кроме этих событий, для формы определены события от мыши и клавиатуры, которые класс TForm наследует от своих предков.
- Пример использования событий формы
Рассмотрим фрагмент кода, который восстанавливает размеры и положение формы (свойства Top, Left, Width, Height, Caption), сохраненные в файл при предыдущем закрытии. Для этого создадим обработчик события OnCreate, в котором необходимые свойства формы инициализируются значениями из файла.
procedure TForm1.FormCreate(Sender: TObject);
var f: TextFile;
begin
AssignFile(f, ‘myfile.txt’);
If FileExists(f) then
begin Readln(f, IntToStr(Top));
Readln(f, IntToStr(Left));
Readln(f, IntToStr(Width));
Readln(f, IntToStr(Height));
Readln(f, Caption);
end;
end;
При попытке закрытия формы, т.е. при генерации события OnCloseQuery, создается диалоговое окно для подтверждения закрытия окна.
procedure TForm1.FormCloseQuery(Sender: TObject;
var CanClose: Boolean);
begin
If MessageDlg('Exit now?', mtConfirmation, [mbYes, mbNo], 0) = mrYes
then CanClose:=True
else CanClose:=False;
end;
end;
В обработке события закрытия формы OnClose значения необходимых свойств записываются в файл.
procedure TForm1.FormClose(Sender: TObject;
var Action: TCloseAction);
var f: TextFile;
begin
AssignFile(f, ‘myfile.txt’);
WriteLn(f, IntToStr(Top));
WriteLn(f, IntToStr(Left));
WriteLn(f, IntToStr(Width));
WriteLn(f, IntToStr(Height));
WriteLn(f, Caption);
end;
- Контрольные вопросы
- Какова роль формы в приложении?
- Какую форму называют главной? дочерней?
- В каком свойстве содержится заголовок формы?
- Назовите возможные значения свойства BorderStyle класса TForm. Поясните их смысл.
- Для чего используется свойство BorderIcons класса TForm?
- На что влияет свойство Formstyle класса TForm?
- Графические возможности визуальных компонентов
Большое внимание в Delphi уделено возможностям работы с деловой графикой: простота и удобство ее использования напрямую сказываются на простоте и удобстве созданных приложений. Вместо сложного графического интерфейса Windows разработчик имеет возможность использовать несколько графических инструментов для создания графических изображений. Такими инструментами являются шрифт, перо и кисть (классы TFont, TPen, TBrush), назначением которых является удобный доступ к свойствам инструментов и прозрачная для пользователя обработка всех их изменений.. Эти классы не используются самостоятельно, а являются составными частями класса TCanvas. Класс TCanvas входит в качестве свойства Canvas во многие визуальные компоненты, которые должны уметь нарисовать себя и отобразить какую-либо графическую информацию, при этом свойство Canvas определяет область, куда выводится графическая информация.
- Свойства класса TCanvas
Основными свойствами класса TCanvas являются Font, Pen, Brush. Типы этих свойств – классы TFont, TPen, TBrush соответственно.
Класс TFont инкапсулирует шрифт Windows. В Delphi допускаются только горизонтально расположенные шрифты. В конструкторе объекта по умолчанию принимается шрифт System цвета clWindowText и размером 10 пунктов. Приведем некоторые свойства этого класса.
Таблица 8 Класс TFont
Свойство | Назначение |
Name | Содержит имя (начертание) шрифта, например, Arial |
Style | Содержит стиль (особенности начертания) шрифта |
fsBold | жирный |
fsItalic | курсив |
fsUnderline | подчеркнутый |
fsStrikeOut | перечеркнутый |
Color | Определяет цвет шрифта |
Charset | Содержит номер набора символов шрифта. По умолчанию равно 1 (default_charset). Для вывода символов кириллицы требуется RUSSIAN_CHARSET |
Height | Содержит значение высоты шрифта в пикселах |
Класс ТРеn инкапсулирует свойства пера стандартного графического интерфейса Windows. В конструкторе по умолчанию создается непрерывное (pssolid) черное перо шириной в один пиксел. Свойства этого класса приведены ниже.
Таблица 9 Класс ТРеn
Свойство | Назначение |
Color | Определяет цвет пера |
Style | Определяет стиль линии, рисуемой пером. |
psSolid | сплошная линия |
psDash | пунктирная линия |
psDot | точечная линия |
psDashDot | точечно-пунктирная линия |
psDashDotDot | точечно-пунктирная линия |
psClear | прозрачная линия |
psInsideFrame | |
Width | Содержит значение толщины пера в пикселах |
Пунктирные и штрихпунктирные линии (стили psDash, psDot, psDashDot, psDashDotDot) могут быть установлены только для линий единичной толщины. Более толстые линии должны быть сплошными — такое ограничение существует в Windows.
Класс TBrush инкапсулирует свойства кисти — инструмента для заливки областей. Когда создается экземпляр этого класса, первоначально создается белая сплошная кисть. Приведем свойства этого класса.
Таблица 10 Класс TBrush
Свойство | Назначение |
Color | Определяет цвет кисти |
Style | Определяет стиль кисти (фактура закраски) |
bsSolid | сплошная заливка |
bsClear | прозрачная заливка |
bsHorizontal | горизонтальная штриховка |
bsVertical | вертикальная штриховка |
bsFDiagonal | диагональная штриховка с наклоном вправо |
bsBDiagonal | диагональная штриховка с наклоном влево |
bsCross | перекрещенная штриховка |
bsDiagCross | диагональная перекрещенная штриховка |
Для поточечного рисования можно получить доступ к каждому пикселу, используя значение свойства Pixels[X, Y: Integer], которое соответствует цвету точки с координатами X, Y. Необходимость рисовать отдельную точку возникает нередко, но если нужно модифицировать все или хотя бы многие точки изображения, свойство pixels надо сразу отбросить — настолько оно неэффективно.
- Методы класса TCanvas
Канва содержит методы-надстройки над всеми основными функциями рисования GDI Windows и свойства, которые приведены ниже в табл. 8.4. При их рассмотрении имейте в виду, что все геометрические фигуры рисуются текущим пером. Те из них, которые можно закрашивать, закрашиваются с помощью текущей кисти. Кисть и перо при этом имеют текущий цвет.
Таблица 11 Методы TCanvas
procedure Arc (XI, Y1, Х2, Y2, Х3, Y3, Х4, Y4: integer); | Метод рисует сегмент эллипса. Эллипс определяется описывающим прямоугольником (Х1, Y1) — (Х2, Y2); его размеры должны лежать в диапазоне от 2 до 32767 точек. Начальная точка сегмента лежит на пересечении эллипса и луча, проведенного из его центра через точку (ХЗ, Y3). Конечная точка сегмента лежит на пересечении эллипса и луча, проведенного из его центра через точку (Х4, Y4). Сегмент рисуется против часовой стрелки. |
procedure Chord (XI, Y1, Х2, Y2, ХЗ, Y3, Х4, Y4 : Integer); | Рисует хорду и заливает отсекаемую ею часть эллипса. Эллипс, начальная и конечная точки хорды определяются как в методе Arc |
procedure Ellipse (XI, Y1, Х2, Y2: Integer); | Рисует и закрашивает эллипс, вписанный в прямоугольник (Х1, Y1) – (Х2, Y2) |
procedure LineTo(X, Y: Integer); | Проводит линию текущим пером из текущей точки в (X, Y) |
procedure MoveTo(X, Y: Integer); | Перемещает текущее положение пера (свойство PenPos) в точку (X, Y) |
procedure FillRect(const Rect: TRect) ; | Производит заливку прямоугольника (текущей кистью) |
procedure Pie(XI, Yl, X2, Y2, X3, Y3, X4, Y4: Integer); | Рисует сектор эллипса, описываемого прямоугольником (Х1, Y1) — (X2, Y2). Стороны сектора лежат на лучах, проходящих из центра эллипса через точки (X3, Y3) и (X4, Y4) |
procedure Polygon(const Points: array of TPoint); | Строит многоугольник, используя массив координат точек Points. При этом последняя точка соединяется с первой и внутренняя область закрашивается |
procedure Polyline(const Points: array of TPoint); | Строит ломаную линию, используя массив координат точек Points |
procedure Rectangle(X1, Y1,X2, Y2: Integers); | Рисует прямоугольник с верхним левым углом в (Х1, Y1) и нижним правым в (X2, Y2) |
Procedure RoundRect(XI, Yl, X2, Y2, X3, Y3: Integers); | Рисует прямоугольник с закругленными углами. Координаты вершин — те же, что и в методе Rectangle. Закругления рисуются как сегменты эллипса с размерами осей по горизонтали и вертикали X3 и Y3 |
procedure TextOut(X, Y; Integer; const Text: string); | Производит вывод строки Text. Левый верхний угол помещается в точку канвы (X, Y) |