2

何年もの間、メイン フォームのフォーム コントロールのサイズを自動調整する VCL フォーム アプリケーション レイアウト戦略を使用してきました。ユーザーは、ボタン レイアウトやチャートなどと同じ一般的なルック アンド フィールで、アプリケーションを自由に最大化またはサイズ変更できます。これを行うために、フォームの FormResize イベントに基づいて子コントロールの BoundsRect を操作するコードを書きました。テキストのフォント サイズと縦横比 (ボタンなど)。メインコントロールのボタン/ラベルサイズの拡大と縮小を追跡するためにフォントサイズを上下させる簡単なコードがさらにありますが、アプリケーションが最小化されている場合、TChart などの多くのコントロールは小さなフォントではありますが、読みやすいままです-私は非常に満足していますこれとともに。

TScaledLayout を持つ FireMonkey を使用するようにレイアウトを移行したいと思います。alClient をフォームに配置すると、含まれるすべてのコントロールのサイズがきれいに変更されます。残念ながら、サイズ変更はすべてのテキスト フォントにも適用されるため、これは望ましくありません。TScaledLayout を alFit に設定すると、コンテンツの元の縦横比が保持されますが、これを実現するために上部または側面のパディングが空になる可能性があります。

TScaledLayout アクションですべてのフォントのサイズ変更を「オフ」にする方法はありますか? FireMonkey Layouts Strategiesの情報を調査し、大幅に増加した「整列」設定をそれぞれ試してみましたが、成功しませんでした。さまざまなディスプレイ デバイス間を移動しながらフル スクリーンを使用するには、この機能が必要でしょうか?

4

2 に答える 2

1

透過レイヤーは、オーバーヘッド プロジェクターのようなものだと考えてください (覚えていますか?)。フォーム上のパネルにテキスト ラベルを配置します。scaledlayout をパネルに配置します。コントロールを scaledlayout に配置します。フォームのサイズが変更されると、コントロールも変更されますが、ラベルは変更されません。

于 2015-04-26T14:28:05.410 に答える