19.2. КОМПОНЕНТ TFORM
Свойства формы:
property Active: Boolean-property ActiveControl: TWinControl; |
Содержит True, если окно активно (имеет фокус ввода) Определяет дочерний элемент, содержащий фокус ввода |
property ActiveMDIChild: TForm; |
Определяет дочернее midi oкнo с фокусом ввода |
TBorderIcon = (biSystemMenu, biMinimize, biMaximize, biHelp) ; TBorderIcons = set of TBorderIcon; property Borderlcons: TBorderIcons; |
Определяет наличие кнопок в заголовке окна: biSystemMenu - имеется кнопка вызова системного меню; biMinimize - имеется кнопка минимизации; biMaximize - имеется кнопка максимизации; biHelp - имеется кнопка вызова справочной службы |
property Canvas: TCanvas;
|
Канва для прорисовки фона окна. Это свойство могут использовать не оконные дочерние элемента |
property ClientHeight: Integer; |
Высота клиентской части окна |
property ClientRect: TRect; |
Прямоугольник клиентской части окна |
property ClientWidth: Integer; |
Ширина клиентской части окна |
property HelpFile: Strings;
|
Каждая форма может иметь индивидуальный Help- файл, имя которого содержит это свойство. Если имя не указано, используется Hdp-файп приложения |
property Icon: TIcon; |
Содержит пиктограмму окна. Для главной формы это свойство определяет также пиктограмму программы |
property KeyPreview: Boolean;
|
Если имеет значение True, форма получает события от клавиатуры, перед тем как они поступят в элемент с фокусом ввода |
property MDIChildCount: Integer;
|
В рамочном MDI-окне указывает количество связанных с ним дочерних midi-oкнo |
property MDIChildren[I: Integer]: Tforms; |
В рамочном MDI-окне открывает доступ к I-му дочернему окну |
property Menu: TMainMenu; |
Содержит главное меню окна |
TModalResuit = Low(Integer)..High(Integer) ; property ModalResult: TModalResuit; |
Для модального окна содержит результат диалога |
property PixelsPerInch: Integer;
|
Определяет разрешающую способность окна в пикселях на один линейный дюйм для этапа конструирования формы |
TPosition = (poDesigned, poDe- fault, poDefaultPosOnly, poDe- faultSizeOnly, poScreenCenter) ; property Position: TPosition;
|
Определяет положение и размеры окна в момент его появления на экране: poDesigned - такие же, как на этапе конструирования окна; poDefault - положение и размеры определяет Windows; poDefaultposOnly - положение, как на этапе конструирования, размеры определяет Windows; л poDefaultSizeOnly - размеры, как на этапе конструирования, положение определяет Windows; poScreenCenter - в центре экрана с размерами, как на этапе конструирования |
TPrintScale = (poNone, poProportional, poPrintToFit); property PrintScale: TPrintScale;
|
Определяет масштабирование окна при его печати на принтере: poNone - нет масштабирования; каждый пиксель окна воспроизводится одной точкой на бумаге; рорrороrtional - форма масштабируется так, чтобы ее образ на бумаге был максимально похож на ее изображение на экране; poPrintToFit- форма печатается с такими же пропорциями, как на экране, но с размерами, за полняющими лист бумаги |
property Scaled: Boolean;
|
Разрешает/запрещает масштабировать форму, если значение ее свойства PixelPerinch отличается от текущего разрешения экрана |
TileMode = (tbHorizonial, tbVertical); property TileMode: TTileMode; |
Определяет стиль расположения дочерних окон MDI-приложения при их упорядочении мозаикой |
property WindowMenu: TMenuItem; |
Определяет пункт главного меню рамочного MDI-окна, к которому добавляются опции дочернего окна |
TWindowState = (wsNormal, wsMinimized, wsMaximized) ; |
Определяет состояние окна в момент его появления на экране: wsNormal - бычное |
property WindowState: TWindow State;
|
Окно; wsMinimized - минимизировано до пиктограммы; wsMaximized - распахнуто на весь экран |
Примечание
Если в множестве свойства BоrderIcon убрать кнопки biMinimize: biMaximize, а в свойство WindowState поместить значение wsMaximized, форма займет все пространство экрана, включая нижнюю панель задач.
Методы формы:
procedure Arrangelcons;
|
Упорядочивает пиктограммы закрытых дочерних окон MDI-приложения |
procedure Cascade; |
Располагает дочерние MDI-окна каскадом |
procedure Close;
|
Закрывает окно. Для главного окна завершает работу программы |
function CloseQuery: Boolean |
Возвращает True, если можно закрыть окно |
procedure DefocusControl(Control: TWinControl; Removing: Boolean); |
Отбирает фокус ввода у дочернего элемента Control. Если при этом Removing=True, фокус ввода получает форма |
procedure FocusControl(Control: TWinControl); |
Передает фокус ввода дочернему элементу Control |
function GetFormImage: TBitmap; |
Содержит текущее изображение окна формы |
procedure Next; |
Делает активным следующее mdi-okнo |
procedure Previous; |
Делает активным предыдущее mdi-okнo |
procedure Tile; |
Располагает дочерние MDI-окна мозаикой |
procedure Print; |
Печатает окно на принтере |
procedure Release;
|
Ожидает окончания обработки всех событий формы и ее дочерних элементов, после чего уничтожает окно и освобождает всю связанную с ним память |
procedure SendCancel- Mode(Sender: TControl);
|
Восстанавливает начальное состояние окна: освобождает мышь, прекращает прокрутку и закрывает меню |
procedure SetFocus; |
Передает фокус ввода форме. Форма при этом должна быть активной и видимой |
procedure Show; |
Показывает форму в немодальном режиме |
function ShowModal: Integer; |
Показывает форму в модальном режиме и возвращает результат диалога |
События формы:
property OnActivate: TNoti fyEvent; |
Возникает в момент активизации окна (при полученииею фокуса ввода) |
TCloseAction = (caNone, caHide, caFree, caMinimize); TCloseEvent = procedure(Sender: TObject; var Action: TCloseAction) of object; property OnClose: TCloseEvent; |
Возникает перед закрытием окна. Параметр Action уточняет необходимые действия: саNоnе - не закрывать окно; caHide - спрятать окно; caFree - уничтожить окно; caMimimize - минимизировать окно |
TCloseQueryEvent = proce dure(Sender: TObject; var CanClose: Boolean) of object; property OnCloseQuery: TCloseQueryEvent; |
Возникает перед закрытием окна. В параметре canclose обработчик сообщает о возможности закрытия окна |
property OnCreate: TNotifyEvent;
|
Возникает при создании окна, но до его появления на экране |
property OnDeactivate: TNoti fyEvent; |
Возникает при передаче активности другому окну той же программы |
property OnDestroy: TNotifyEvent; |
Возникает перед разрушением окна |
THelpEvent = function (Command: Word; Data: Longint; var CallHelp: Boolean): Boolean of object; property OnHelp: THelpEvent; |
Возникает при обращении к справочной службе. В параметре callHelp обработчик сообщает о возможности получения помощи |
property OnHide: TNotifyEvent; |
Возникает перед исчезновением окна |
property OnPaint: TNotifyEvent; |
Возникает при необходимости прорисовки окна |
property OnResize: TNotifyEvent; |
Возникает при изменении размеров окна |
property OnShow: TNotifyEvent; |
Возникает при появлении окна на экране |