FGX.Forms.TfgCustomForm: различия между версиями

Материал из FGX Native Докуметации
Перейти к навигации Перейти к поиску
(summary)
(summary)
 
(не показано 17 промежуточных версий этого же участника)
Строка 4: Строка 4:
 
Delphi
 
Delphi
  
<syntaxhighlight lang="Delphi">TfgCustomForm = class (TfgCustomLayout)</syntaxhighlight>
+
<syntaxhighlight lang="Delphi">TfgCustomForm = class (TfgCustomLayout, IFGXToolbarOwner, IFGXThemeSupported, IFGXForm)</syntaxhighlight>
  
<p class="class-inheritance"><span class="type-border">[[System.Classes.TComponent|TComponent]]</span> -> <span class="type-border">[[FGX.Control.TfgControl|TfgControl]]</span> -> <span class="type-border">[[FGX.Layout.TfgCustomLayout|TfgCustomLayout]]</span> -> <span class="type-border">[[FGX.Forms.TfgCustomForm|TfgCustomForm]]</span></p>
+
<p class="class-inheritance"><span class="type-border">[[System.Classes.TComponent|TComponent]]</span> -> <span class="type-border">[[FGX.Controls.TfgControl|TfgControl]]</span> -> <span class="type-border">[[FGX.Layout.TfgCustomLayout|TfgCustomLayout]]</span> -> <span class="type-border">[[FGX.Forms.TfgCustomForm|TfgCustomForm]]</span></p>
  
 
Прямые наследники:
 
Прямые наследники:
Строка 14: Строка 14:
  
 
<span style="color:gray">Описание отсутствует.</span>
 
<span style="color:gray">Описание отсутствует.</span>
 
 
== Конструкторы ==
 
== Конструкторы ==
  
Строка 28: Строка 27:
 
|-
 
|-
 
| <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">AfterConstruction()</code>
 
| <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">AfterConstruction()</code>
 +
<span style="color:gray">Описание отсутствует.</span>
 +
|-
 +
| <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">BeforeDestruction()</code>
 
<span style="color:gray">Описание отсутствует.</span>
 
<span style="color:gray">Описание отсутствует.</span>
 
|-
 
|-
Строка 35: Строка 37:
 
| <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">Hide()</code>
 
| <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">Hide()</code>
 
<p>Скрыть форму с экрана.</p>
 
<p>Скрыть форму с экрана.</p>
 +
|-
 +
| <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">Close()</code>
 +
 +
<p>Скрыть форму с экрана с возможностью разрушением инстанса.</p><div class="info">На решение о действии с формой можно повлиять с помощью свойства <i>DefaultCloseAction</i> и/или события <i>OnClose</i> .</div>
 
|-
 
|-
 
| <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">ScreenToForm(const AScreenPoint: [[TPointF]]): [[TPointF]]</code>
 
| <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">ScreenToForm(const AScreenPoint: [[TPointF]]): [[TPointF]]</code>
Строка 41: Строка 47:
 
| <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">FormToScreen(const AFormPoint: [[TPointF]]): [[TPointF]]</code>
 
| <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">FormToScreen(const AFormPoint: [[TPointF]]): [[TPointF]]</code>
 
<p>Конвертирует координаты точки в системе координат формы в систему координат экрана.</p>
 
<p>Конвертирует координаты точки в системе координат формы в систему координат экрана.</p>
 +
|-
 +
| <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">DispatchKeyEvent(const AKey: [[TfgKey|TfgKey]]; var AHandled: [[Boolean]])</code>
 +
<span style="color:gray">Описание отсутствует.</span>
 
|}
 
|}
  
Строка 50: Строка 59:
 
<p>Доступ к дизайнеру формы. Актуально только для Win32 платформы и ситуации, когда пакет загружен в IDE. Используется для интеграции библиотеки с IDE.</p>
 
<p>Доступ к дизайнеру формы. Актуально только для Win32 платформы и ситуации, когда пакет загружен в IDE. Используется для интеграции библиотеки с IDE.</p>
 
|-
 
|-
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>LayoutDirection: [[FGX.Control.Types.TfgControlLayoutDirection|TfgControlLayoutDirection]]</code>
+
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>CloseOnHardwareBack: [[Boolean]]</code>
 +
 
 +
<p>По умолчанию форма закрывается, если пользователь нажимает на кнопку <i>vkHardwareBack</i> . Однако, если разработчик сам хочет принимать решение о закрытии формы, то он может отключить закрытие формы по кнопке назад при помощи этого свойства.</p><div class="info">Встраиваемая форма (у которой <i>Parent <> nil</i> ) не закрывается по кнопке назад.</div>
 +
|-
 +
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>LayoutDirection: [[FGX.Controls.Types.TfgControlLayoutDirection|TfgControlLayoutDirection]]</code>
 
<p>Направление выравнивания контролов на форме для LTR and RTL языков. В зависимости от выбранного значения, при выравнивании положение контролов может быть зеркально отражено относительно вертикальной оси.</p>
 
<p>Направление выравнивания контролов на форме для LTR and RTL языков. В зависимости от выбранного значения, при выравнивании положение контролов может быть зеркально отражено относительно вертикальной оси.</p>
 
|-
 
|-
Строка 61: Строка 74:
 
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>Toolbar: [[FGX.Forms.Types.IFGXToolBar|IFGXToolBar]]</code>
 
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>Toolbar: [[FGX.Forms.Types.IFGXToolBar|IFGXToolBar]]</code>
 
<p>Это свойство позволяет встроить выбранный тулбар в форму на низком уровне.</p>
 
<p>Это свойство позволяет встроить выбранный тулбар в форму на низком уровне.</p>
 +
|-
 +
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>Transparent: [[Boolean]]</code>
 +
<p>Позволяет отключить отображение заднего фона, сделав форму полностью прозрачной.</p>
 +
|-
 +
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>ThemeName: [[TfgThemeName|TfgThemeName]]</code>
 +
 +
<p>Название темы, которая будет использоваться для всех вложеннх компонентов.</p><div class="info">Если значение не указано, то по умолчанию используется тема "Theme".</div>
 +
|-
 +
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>DefaultCloseAction: [[FGX.Controls.TfgFormCloseAction|TfgFormCloseAction]]</code>
 +
 +
<p>Действие по-умолчанию, которое происходит с формой, когда она закрывается с помощью <i>Close</i> .</p><div class="info">На решение о действии с формой так же можно повлиять с помощью события <i>OnClose</i> .</div>
 +
|}
 +
 +
== События ==
 +
 +
{| class="wikitable sortable"
 +
|-
 +
| <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnCreate: [[TNotifyEvent]]</code>
 +
<p>Срабатывает, когда форма создана и полностью загружена.</p>
 +
|-
 +
| <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnKey: [[TfgKeyEvent|TfgKeyEvent]]</code>
 +
<p>Срабатывает, когда ни один компонент формы не обработал событие кнопки.</p>
 +
|-
 +
| <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnShow: [[TNotifyEvent]]</code>
 +
<p>Срабатывает, когда форма отображается на экране.</p>
 +
|-
 +
| <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnHide: [[TNotifyEvent]]</code>
 +
<p>Срабатывает, когда форма скрывается с экрана.</p>
 +
|-
 +
| <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnClose: [[TfgCloseEvent|TfgCloseEvent]]</code>
 +
<p>Срабатывает, когда форма закрывается с помощью метода <i>Close</i> .</p>
 +
|-
 +
| <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnInterfaceOrientationChanged: [[TfgInterfaceOrientationChangedEvent|TfgInterfaceOrientationChangedEvent]]</code>
 +
<p>Срабатывает, когда приложение меняет свою ориентацию на экране.</p>
 +
|-
 +
| <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnVirtualKeyboardBeginFrameChanging: [[TfgVirtualKeyboardBeginFrameChangingEvent|TfgVirtualKeyboardBeginFrameChangingEvent]]</code>
 +
 +
<p>Срабатывает до начала анимации изменения размера или положения виртуальной клавиатуры. Содержит конечное положение виртуальной клавиатуры и значение длительности анимации, в течении которого клавиатура займет конечное положение. Переданные параметры анимации можно использовать для анимированного перестроения UI при изменении области расположения виртуальной клавиатуры.</p><div class="info">Не вызывается, если форма скрыта.</div>
 +
|-
 +
| <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnVirtualKeyboardFrameChanged: [[TfgVirtualKeyboardFrameChangedEvent|TfgVirtualKeyboardFrameChangedEvent]]</code>
 +
 +
<p>Срабатывает, когда виртуальная клавиатура меняет своё положение на экране.</p><div class="info">Не вызывается, если форма скрыта.</div>
 +
|-
 +
| <syntaxhighlight lang="Delphi">event</syntaxhighlight> || <code>OnSafeAreaChanged: [[TfgSafeAreaChangedEvent|TfgSafeAreaChangedEvent]]</code>
 +
<p>Изменились отступы с краев экрана, в которых не рекомендуется размещать визуальные компоненты, чтобы они не пересекались с системными элементами пользовательского интерфейса. Гарантируется, что при первом отображении формы, данный метод будет вызван, не зависимо от того, были ли изменены размеры областей или нет.</p>
 +
|}
 +
 +
== Константы ==
 +
 +
{| class="wikitable sortable"
 +
|-
 +
| <syntaxhighlight lang="Delphi">const</syntaxhighlight> || <code>DefaultFullScreen: [[Boolean]]</code>
 +
<span style="color:gray">Описание отсутствует.</span>
 +
|-
 +
| <syntaxhighlight lang="Delphi">const</syntaxhighlight> || <code>DefaultDirection: [[FGX.Controls.Types.TfgControlLayoutDirection|TfgControlLayoutDirection]]</code>
 +
<span style="color:gray">Описание отсутствует.</span>
 +
|-
 +
| <syntaxhighlight lang="Delphi">const</syntaxhighlight> || <code>DefaultFlexDirection: [[FGX.Layout.Types.TfgFlexDirection|TfgFlexDirection]]</code>
 +
<span style="color:gray">Описание отсутствует.</span>
 +
|-
 +
| <syntaxhighlight lang="Delphi">const</syntaxhighlight> || <code>DefaultHitTest: [[Boolean]]</code>
 +
<span style="color:gray">Описание отсутствует.</span>
 +
|-
 +
| <syntaxhighlight lang="Delphi">const</syntaxhighlight> || <code>DefaultTransparent: [[Boolean]]</code>
 +
<span style="color:gray">Описание отсутствует.</span>
 +
|-
 +
| <syntaxhighlight lang="Delphi">const</syntaxhighlight> || <code>DefaultThemeName: [[string]]</code>
 +
<span style="color:gray">Описание отсутствует.</span>
 +
|-
 +
| <syntaxhighlight lang="Delphi">const</syntaxhighlight> || <code>DefaultCloseOnHardwareBack: [[Boolean]]</code>
 +
<span style="color:gray">Описание отсутствует.</span>
 +
|-
 +
| <syntaxhighlight lang="Delphi">const</syntaxhighlight> || <code>DefaultDefaultCloseAction: [[FGX.Controls.TfgFormCloseAction|TfgFormCloseAction]]</code>
 +
<span style="color:gray">Описание отсутствует.</span>
 
|}
 
|}

Текущая версия на 17:19, 23 декабря 2022

Delphi

TfgCustomForm = class (TfgCustomLayout, IFGXToolbarOwner, IFGXThemeSupported, IFGXForm)

TComponent -> TfgControl -> TfgCustomLayout -> TfgCustomForm

Прямые наследники: TfgForm

Описание

Описание отсутствует.

Конструкторы

constructor
Create(AOwner: TComponent)

Описание отсутствует.

Методы

procedure
AfterConstruction()

Описание отсутствует.

procedure
BeforeDestruction()

Описание отсутствует.

procedure
Show()

Отобразить форму на экране.

procedure
Hide()

Скрыть форму с экрана.

procedure
Close()

Скрыть форму с экрана с возможностью разрушением инстанса.

На решение о действии с формой можно повлиять с помощью свойства DefaultCloseAction и/или события OnClose .
function
ScreenToForm(const AScreenPoint: TPointF): TPointF

Конвертирует координаты точки в системе координат экрана в систему координат формы.

function
FormToScreen(const AFormPoint: TPointF): TPointF

Конвертирует координаты точки в системе координат формы в систему координат экрана.

procedure
DispatchKeyEvent(const AKey: TfgKey; var AHandled: Boolean)

Описание отсутствует.

Свойства

property
Designer: IFGXDesignerHook

Доступ к дизайнеру формы. Актуально только для Win32 платформы и ситуации, когда пакет загружен в IDE. Используется для интеграции библиотеки с IDE.

property
CloseOnHardwareBack: Boolean

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

Встраиваемая форма (у которой Parent <> nil ) не закрывается по кнопке назад.
property
LayoutDirection: TfgControlLayoutDirection

Направление выравнивания контролов на форме для LTR and RTL языков. В зависимости от выбранного значения, при выравнивании положение контролов может быть зеркально отражено относительно вертикальной оси.

property
FullScreen: Boolean

Будет ли растянута форма по размеру экрана или нет. Если нет, то форме можно задать любую позицию и размер.

property
SystemStatusBar: TfgSystemStatusBar

Настройки системного статуса бара.

property
Toolbar: IFGXToolBar

Это свойство позволяет встроить выбранный тулбар в форму на низком уровне.

property
Transparent: Boolean

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

property
ThemeName: TfgThemeName

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

Если значение не указано, то по умолчанию используется тема "Theme".
property
DefaultCloseAction: TfgFormCloseAction

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

На решение о действии с формой так же можно повлиять с помощью события OnClose .

События

event
OnCreate: TNotifyEvent

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

event
OnKey: TfgKeyEvent

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

event
OnShow: TNotifyEvent

Срабатывает, когда форма отображается на экране.

event
OnHide: TNotifyEvent

Срабатывает, когда форма скрывается с экрана.

event
OnClose: TfgCloseEvent

Срабатывает, когда форма закрывается с помощью метода Close .

event
OnInterfaceOrientationChanged: TfgInterfaceOrientationChangedEvent

Срабатывает, когда приложение меняет свою ориентацию на экране.

event
OnVirtualKeyboardBeginFrameChanging: TfgVirtualKeyboardBeginFrameChangingEvent

Срабатывает до начала анимации изменения размера или положения виртуальной клавиатуры. Содержит конечное положение виртуальной клавиатуры и значение длительности анимации, в течении которого клавиатура займет конечное положение. Переданные параметры анимации можно использовать для анимированного перестроения UI при изменении области расположения виртуальной клавиатуры.

Не вызывается, если форма скрыта.
event
OnVirtualKeyboardFrameChanged: TfgVirtualKeyboardFrameChangedEvent

Срабатывает, когда виртуальная клавиатура меняет своё положение на экране.

Не вызывается, если форма скрыта.
event
OnSafeAreaChanged: TfgSafeAreaChangedEvent

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

Константы

const
DefaultFullScreen: Boolean

Описание отсутствует.

const
DefaultDirection: TfgControlLayoutDirection

Описание отсутствует.

const
DefaultFlexDirection: TfgFlexDirection

Описание отсутствует.

const
DefaultHitTest: Boolean

Описание отсутствует.

const
DefaultTransparent: Boolean

Описание отсутствует.

const
DefaultThemeName: string

Описание отсутствует.

const
DefaultCloseOnHardwareBack: Boolean

Описание отсутствует.

const
DefaultDefaultCloseAction: TfgFormCloseAction

Описание отсутствует.