15. Представление формы

Представление формы - это контейнер, в котором размещаются форма, табличная часть формы и дерево. За представление формы отвечает компонент класса TFormView. На рис. 14 показано представление формы «Таблица сверху».

рис 14

Для доступа к компонентам используются следующие свойства:

  • Form – форма,
  • Grid – табличная часть формы,
  • Tree – дерево,
  • ScrollBox – контейнер, в котором располагается форма,
  • TreeSplitter, FormSplitter – сплиттеры.

Компоненты создаются вне зависимости, отображаются они или нет.

Доступ к представлениям формы в главном окне

Главное окно доступно через переменную MainWindow. Компоненты представления формы располагаются в закладках. Закладки доступны через свойство Pages. Представления формы доступны через свойство FormViews:

property FormViews[Index: Integer]: TFormView [r]

Пример:

MainWindow.FormViews[MainWindow.Pages.TabIndex].Form.MoveNext;

В примере мы обращаемся к представлению текущей закладки. Количество представлений равно количеству закладок в главном окне.

Создание и закрытие закладки в главном окне приложения

CreatePage

Закладка создается при помощи метода главного окна CreatePage:

function CreatePage(const FormName: String; ViewType: TViewType): TTabSheet

В качестве параметров выступают имя формы и ее представление. После вызова этого метода в форме появляется новая закладка. Переход к закладке нужно осуществлять самостоятельно. После создания закладки набор данных еще не открыт. Чтение данных можно инициировать либо программно, либо автоматически при выборе пользователем закладки.

Пример:

Tb := MainWindow.CreatePage('Дела', vtGridLeft);
// При указании активной закладки, данные 
//читаются из базы автоматически MainWindow.Pages.ActivePage := Tb;

DestroyPage

Закрывается закладка методом DestroyPage:

procedure DestroyPage(Page: TTabSheet);

Создание и уничтожение компонента представления формы

Компонент создается конструктором Create:

constructor Create(AOwner: TComponent; const FormName: String; ViewType: TViewType)

  • AOwner – компонент-владелец,
  • FormName – имя формы,
  • ViewType – представление формы. Возможны следующие значения:
    • vtGridTop – таблица вверху,
    • vtGridBottom – таблица внизу,
    • vtGridLeft – таблица слева,
    • vtGridRight – таблица справа,
    • vtGridOnly – только табличная часть (форма находится в окне редактирования),
    • vtWithoutGrid – только форма,
    • vtSimpleForm – простая форма,
    • vtDefault – значение, установленное в дизайнере.

Обычно нет необходимости создавать этот компонент, если только вам не нужно создать какое- нибудь нестандартное окно или несколько представлений в одном окне. Если владелец не указан AOwner = nil, то уничтожать компонент надо самостоятельно. Для этого вызывается метод Free.