Форма является основным компонентом, на котором располагаются все остальные компоненты дизайнера форм. Класс Form используется для создания стандартных окон, окон инструментов, необрамленных и перемещаемых окон. Класс Form также используется для создания модальных окон, например, окна. Для определения параметров формы используются свойства и методы, реализованные в IFormControl. Параметры активной формы из языка Fore можно получить используя свойство Active, либо используя зарезервированный идентификатор Self. Self вернет параметры формы, в рамках которой он был вызван.
Особым видом приложений являются приложения с многооконным интерфейсом - 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 наступает непосредственно перед выводом формы на экран. |
См. также: