layout-system.md 5.2 KB

レイアウト システム

中級 プログラマー デザイナー

Stride UI のレイアウトシステムは、Windows Presentation Foundation(WPF)に似ています。WPF のレイアウトシステムの詳細については、MSDNドキュメントを参照してください。WPF のドキュメントの多くは、Stride のレイアウトシステムにも当てはまります。

Stride UI システムのすべての @'Stride.UI.UIElement' には、それを取り巻く矩形があり、レイアウトで使用されます。Stride は、@'Stride.UI.UIElement' の要件、利用可能な画面スペース、制約、マージン、余白、および @'Stride.UI.Panels.Panel' 要素の特別な動作(特定の方法で子を配置する)に従って、レイアウトを計算します。

レイアウトシステムは、このデータを再帰的に処理して、UI システム内のすべての @'Stride.UI.UIElement' の位置とサイズを計算します。

Measure と Arrange

Stride では、レイアウトの処理を 2 つのパスで再帰的に行います。MeasureArrange です。

Measure

Measure パスでは、各要素は、@'Stride.UI.UIElement.Width', @'Stride.UI.UIElement.Height', @'Stride.UI.UIElement.Margin'などのプロパティに従って、DesiredSize を再帰的に計算します。

一部の @'Stride.UI.Panels.Panel' 要素は、Measure を再帰的に呼び出して、子要素の DesiredSize を決定し、それに従って動作します。

Arrange

Arrange パスは、以下のプロパティを考慮して、要素を配置します。

  • @'Stride.UI.UIElement.Margin'
  • @'Stride.UI.UIElement.Width'
  • @'Stride.UI.UIElement.Height'
  • @'Stride.UI.UIElement.HorizontalAlignment'
  • @'Stride.UI.UIElement.VerticalAlignment'
  • @'Stride.UI.Panels.Panel'
  • specific Arrange rules

関連項目