DelphiXE3 [FMX] 拡大縮小可能レイアウト(ScaledLayout)
2014/01/01
前回は [Layouts]内の「レイアウト」(Layout)について見てみました。
今回は同じく[Layouts]内の「拡大縮小可能レイアウト」(ScaledLayout)について見ていきます。
[Layouts]内
FMX
ヘルプより。
FireMonkey の拡大/縮小可能レイアウトは、TControl のラッパーであり、レイアウトの物理的なサイズに合わせて内容物の縮尺を変更できる、他のオブジェクトのレイヤのような働きをします。
拡大/縮小可能レイアウトは、次の図のように内容物の縮尺を変更できる、他のグラフィック オブジェクトのコンテナです。
ラベルとボタンは、レイヤが描画面全体を占めるように位置揃えがクライアントと指定されたレイヤを含むフォームのサイズに合わせて、拡大/縮小されます。
「拡大縮小可能レイアウト」(ScaledLayout)は、先の
「レイアウト」(Layout)
と何が違うのか?というのが気になるところです。レイアウトにも Scale プロパティは存在し拡大縮小は可能だからです。
まずは、オブジェクトインスペクタを見ると、
OriginalWidth
プロパティ
縮尺レイアウトのコントロールの縮尺されていない幅を示します。元の幅とは、縮尺レイアウト コントロールの縮尺されていない X 方向のサイズを表します。
OriginalHeight
プロパティ
縮尺レイアウトのコントロールの縮尺されていない高さを示します。元の高さとは、縮尺レイアウト コントロールの縮尺されていない Y 方向のサイズを表します。
が追加されているのが分かります。
普通に画面デザインを行なって、Scaleプロパティで拡大縮小を行う分については、双方とも同じような感じです。
Scale.X プロパティを「2.5」に指定
↓
Scaleプロパティを操作しても、Width、Height、OriginalWidth、OriginalHeight各プロパティ値は変わらず元のままのようですね。
この”拡大縮小可能”レイアウト、というのは、そういう意味ではなく、
例えば、下図のように画面配置を行い、拡大縮小レイアウトの Align プロパティを「alTop」、レイアウトの Align プロパティを「alClient」にした場合、
保存・コンパイル・実行をすると、
↓
という具合に、
拡大縮小可能レイアウトは (Width、Height)値と、(OriginalWidth、OriginalHeight)値が異なる値になる事によって、自動的に拡大縮小が行われる、
という事のようです。
ですので、こういった事を行いたい場合には、このコンポーネントを利用し、こういった事を行いたくない場合には、先のレイアウトを利用する、というような使い分けをすればいい、という事でしょう。
バッチファイル
BASIC
C言語のお勉強
拡張子な話
DOSプログラム
Delphi
>
Delphi入門編
>
Delphi2010
>
DelphiXE3
▲2013/12/31
2014/01/01
▼2014/01/02
シェアウェア
Script!World
データベース
(C)Copyright 1999-2015. By AFsoft All Rights Reserved.