Форма

Иерархия наследования

          IComponent

          IControl

          IFormControl

          IFormClass

          Form

Описание

Форма является основным компонентом, на котором располагаются все остальные компоненты дизайнера форм. Класс Form используется для создания стандартных окон, окон инструментов, необрамленных и перемещаемых окон. Класс Form также используется для создания модальных окон, например, окна. Для определения параметров формы используются свойства и методы, реализованные в IFormControl. Параметры активной формы из языка Fore можно получить используя свойство Active, либо используя зарезервированный идентификатор Self. Self вернет параметры формы, в рамках которой он был вызван.

MDI

Особым видом приложений являются приложения с многооконным интерфейсом - MDI. MDI приложение представляет собой главную MDI-форму. В области главной формы в виде отдельных окон отображаются дочерние MDI-формы.

Для создания главной MDI-формы необходимо свойству WindowStyle установить значения MDIFrame. Дочерние MDI-формы создаются путем установки свойству WindowStyle значения MDIChild.

На главной MDI-форме могут использоваться только следующие компоненты: BannerBar, ControlBar, MainMenu, ReportFormulaBar, Ribbon, Toolbar. Дочерние MDI-формы могут содержать любые компоненты.

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

Для активации MDI-формы необходимо щелкнуть по соответствующей вкладке, либо выбрать форму из списка, открываемого при нажатии кнопки . Данная кнопка расположена с правой стороны в области вкладок. Для закрытия какой-либо дочерней MDI-формы необходимо щелкнуть средней кнопкой мыши (роликом мыши) в области соответствующей вкладки. Закрытие активной дочерней MDI-формы можно осуществить следующим образом:

В языке Fore управление дочерними MDI-окнами осуществляется с помощью соответствующих свойств и методов, реализованных в интерфейсе IFormControl. При создании дочерних MDI-окон в качестве родительского окна в методе CreateForm должна передаваться главная MDI-форма.

Примечание. Форма, открытая модально для какой-либо дочерней MDI-формы, будет существовать вне зависимости от данной формы. При закрытии дочерней MDI-формы, формы, открытые для нее модально, будут доступны. Закрытие всех модальных форм будет производиться при закрытии главной (MDIFrame) MDI-формы.

Пример

Свойства формы

  Имя свойства Краткое описание

Active

Свойство Active возвращает параметры формы, активной в данный момент.

MakeShortcut

Свойство MakeShortcut возвращает значение, соответствующее сочетание «горячих клавиш», которое необходимо назначить для какого-либо действия.

Методы формы

  Имя метода Краткое описание

CreateForm

Метод CreateForm осуществляет создание новой формы.

События формы

  Имя события Краткое описание

OnActivate

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

OnBeginDrag

Событие OnBeginDrag для компонента наступает, когда пользователь начинает перетаскивать объект от компонента.

OnClick

Событие OnClick наступает, если пользователь щёлкнул в области формы.

OnClose

Событие OnClose наступает непосредственно перед закрытием формы.

OnCloseQuery

Событие OnCloseQuery наступает в тот момент, когда форма получает команду на закрытие.

OnCommand

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

OnCreate

Событие OnCreate наступает непосредственно при создании формы.

OnDblClick

Событие OnDblClick наступает, если пользователь дважды щёлкнул в области формы.

OnDeactivate

Событие OnDeactivate наступает в момент потери фокуса формой, либо одним из ее дочерних компонентов.

OnDragDrop

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

OnDragEnter

Событие OnDragEnter наступает, когда перетаскиваемый объект входит в границы данного компонента.

OnDragLeave

Событие OnDragLeave наступает, когда перетаскиваемый объект выходит за границы данного компонента.

OnDragOver

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

OnEnter

Событие OnEnter наступает в момент получения фокуса компонентом.

OnExit

Событие OnExit наступает в момент потери фокуса компонентом.

OnHelp

Событие OnHelp наступает во время нажатия на компонент при активном режиме отображения справки, либо при нажатии кнопки «F1» для активного компонента.

OnHide

Событие OnHide наступает непосредственно перед тем, как форма станет невидимой.

OnMDIActivate

Событие OnMDIActivate возникает во время смены активной дочерней MDI-формы.

OnKeyDown

Событие OnKeyDown наступает, если компонент находится в фокусе и производится нажатие на клавиатуру.

OnKeyPress

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

OnKeyPreview

Событие OnKeyPreview наступает перед каждым событием, связанным с нажатием клавиш.

OnKeyUp

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

OnMouseDown

Событие OnMouseDown наступает, если указатель находится в области компонента и была нажата любая кнопка мыши.

OnMouseEnter

Событие OnMouseEnter наступает в момент входа курсора мыши в область компонента.

OnMouseHover

Событие OnMouseHover наступает при задержке курсора мыши в области компонента.

OnMouseLeave

Событие OnMouseLeave наступает в момент выхода курсора мыши за пределы области компонента.

OnMouseMove

Событие OnMouseMove наступает при перемещении курсора мыши над компонентом.

OnMouseUp

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

OnMouseWheel

Событие OnMouseWheel наступает, если компонент находится в фокусе при вращении колеса мыши.

OnResize

Событие OnResize наступает после изменения размера формы.

OnShow

Событие OnShow наступает непосредственно перед выводом формы на экран.

См. также:

Компоненты среды разработки