Форма и ее основные свойства

При создании нового проекта появляется пустая форма. Следует заметить, что форма и окно приложения это не одно и то же. Форма –это то, что вы видите во время проектирования, а окно – это то, что видит пользователь во время выполнения вашего приложения. Таким образом, с помощью формы вы проектируете вид окна вашего приложения. Кроме того, форме соответствует класс, производный от базового класса TForm.

Мы с вами рассматривали спецификаторы доступа private, protected и public с помощью которых можно управлять видимостью членов класса извне.

Имеется еще один спецификатор – published (опубликованный). В этом разделе помещаются свойства, которые пользователь может устанавливать на этапе проектирования, но доступны и во время выполнения, т.е. содержат так называемую RTTI–информацию (run — time type information). Обычно в разделе published размещаются только свойства и события. Все компоненты Lazarus имеют опубликованный интерфейс, который отображается в инспекторе объектов. Рассмотрим подробнее некоторые свойства формы. Как вы уже поняли, свойства формы, равно как и события, представляют собой опубликованную часть интерфейса класса формы. Их можно будет увидеть в инспекторе объектов во вкладке Свойства, рис 1.

Рис. 1. Вкладка «Свойства» Инспектора объектов

Свойство Caption – заголовок окна, представляет собой некоторый текст. По умолчанию присваивается значение «Form1». Желательно здесь указывать краткое содержание программы, например «Расчет заработной платы». Очень часто разработчики здесь выводят название программы и имя документа, связанного с этой программой.

Свойство Name – имя формы в программе. По этому имени можно обращаться к форме как к объекту в программе. По умолчанию присваивается имя Form1. Желательно давать осмысленные имена, особенно если в программе имеется несколько форм. Именование должно подчиняться требованиям языка Паскаль, т.е. имя не должно содержать недопустимые символы, пробелы и т.д.

Свойство Left устанавливает координаты левого верхнего угла окна по горизонтали.

Свойство Top устанавливает координаты левого верхнего угла окна по вертикали.

Сами размеры окна задаются свойствами Height и Width. Размеры задаются в пикселах. Положение окна при запуске определяется свойством Position, оно может принимать следующие значения:

poDesigned – положение окна и его размеры остаются такими же, что и при 
  проектировании;
poDefault – положение окна и его размеры определяется автоматически 
  операционной системой;
poDefaultPosOnly – положение окна определяется автоматически операционной 
  системой, а размеры соответствуют установкам при проектировании;
poDefaultSizeOnly – размеры окна определяется автоматически операционной 
  системой, а положение соответствуют установкам при проектировании;
poScreenCenter или poDesktopCenter – окно выводится в центре экрана, размер 
  определяется при проектировании;
poMainFormCenter – форма отображается в центре главной формы, размер 
  определяется при проектировании, если имеется только одна главная форма, 
  то этот параметр соответствует poScreenCenter;
poOwnerFormCenter – форма отображается в центре той формы, которая является 
  владельцем данной формы.

Для того чтобы выбрать нужное значение, необходимо щелкнуть на название свойства. Появится раскрывающийся список, из которого и можно выбрать требуемое значение, рис. 2.

Рис. 2. Возможные значения свойства «Position»

Управлять положением формы на экране можно также с помощью свойства Align. Оно может принимать значения:

alNone – положение формы и его размеры не меняются;
alBottom – форма располагается внизу экрана;
alLeft – форма располагается в левой части экрана;
alRight – форма располагается в правой части экрана;
alTop – форма располагается вверху экрана;
alClient – форма занимает весь экран;

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

Есть свойства, которые называются составными или сложными. Они помечаются в инспекторе объектов знаком «+» или кнопкой с троеточием. Например, свойство Font является составным. Составные свойства, как следует из названия, состоят из нескольких значений. На рис. 3 показан пример задания значений для свойства Font.

Рис. 3. Окно выбора шрифта

С другими свойствами формы мы будем знакомиться в дальнейшем по мере необходимости.

Над объектами – экземплярами класса можно производить некоторые действия, причем перечень действий определен в самом классе. Никаких других действий с ними производить нельзя. Эти действия иначе называются методами.

Например, для класса формы существует метод Show–показать, метод Hide–скрыть, метод Close–закрыть.

В редакторе исходного кода Lazarus есть прекрасный инструмент CodeTools с помощью которого можно просмотреть все свойства и методы того или иного класса.

Посмотрим, например свойства и методы класса TForm1. Для этого в редакторе исходного кода после строк

implementation

{$R *.lfm}

initialization

наберите Form1. И немного подождите. Перед вами появится список всех свойств и методов класса TForm1, рис. 4

Рис. 4. Окно «Code Tools»

Пользуясь подсказками Code Tools можно значительно ускорить процесс набора кода программы.

Форма может быть модальной и немодальной. Модальная форма это такая форма, которая не позволяет открывать другие формы, пока она сама не будет закрыта. К таким формам чаще всего относятся диалоговые окна. Чтобы отобразить форму в модальном режиме необходимо вызвать метод ShowModal.

По умолчанию главная форма приложения открывается в немодальном режиме.