FireMonkey コントロールには、VCL コントロールのようにアンカー プロパティがないように見えます。フォームのサイズが変更されたときに FireMonkey コントロールを自動的に調整するにはどうすればよいですか?
5 に答える
VCL のアンカー プロパティは明らかに (パフォーマンスを考慮して) マージンとパディングに置き換えられました。XE2 wikiでいくつかのドキュメントを見つけました。下部パネルの余白を設定して、ボタンが存在する小さなスペースを作成します。整列を必ず alRight に設定してください。
たとえば、フォームの右端と一番右のボタンの間のギャップには 15 のマージンがあります。上下のマージンは 12 です。パディングはマージンの反対で、パディングはコントロールの外側にスペースを置きます。右端のボタンについては、左側に 20 のパディングを追加しました。これは 2 つのボタンの間のスペースになります。2 番目のボタンでは、align プロパティを alRight に設定するだけで、パディングやマージンを調整する必要はありません。
カスタムアンカーは、TLayerをスタックすることで実行できます。たとえば、「ボタンを左上隅に揃える」のようなものは、レイヤーを左上に揃えてから、(レイヤー内の)ボタンを上に揃えることによってのみ実現できます。
LiveBinding と式を使用して、親コントロールに基づいてコントロールのプロパティを変更できます。それ以外の場合は、マージンとパディング (HTML/CSS など) を使用します。
Delphi XE 3anchors
はFireMonkey²を提供します。
Button1.Anchors := [TAnchorKind.akTop, TAnchorKind.akRight];