<< Click to Display Table of Contents >> マニュアル > 監視システム構築ガイド > プロジェクトの作成 > 独自プロジェクトの作成 > 独自プロジェクトのレイアウト設計について > フォームの拡大縮小の検討 |
フォームの拡大縮小の検討
可変サイズやフルスクリーン表示の際には、メインエリアのビューコントロールに表示するフォームの拡大縮小を検討する必要があります。
フォームが拡大縮小された際の動作は、フォームの「Stretch」プロパティの設定に従います。
Stretchプロパティは、以下の値を設定することができます。
STRETCH_FULL |
サイズに合わせてフォームを引き伸ばして表示します。フォームが引き延ばして表示されると、フォーム上に配置された各コントロールも同様に引き延ばして表示されます(例えば、元の表示が正確な円の場合、サイズにより楕円のように伸びて表示されます)。
|
STRETCH_KEEPRATE |
元フォームの縦横比を維持して、表示サイズに合わせてフォームを引き伸ばして表示する。フォーム上に配置された各コントロールも同様に引き延ばして表示されますが、縦横比が維持されるため、元の形状のまま拡大縮小されます(例えば、円は円のまま表示されます)。
|
RESIZE_FULL |
サイズに合わせてフォームそのもののサイズを自動的に変更します。フォーム上に配置された各コントロールのサイズは、各コントロールの「AutoResizeX」「AutoResizeY」の設定に従って自動的に変化します。
|
RESIZE_KEEPRATE |
元フォームの縦横比を維持して、サイズに合わせてフォームそのもののサイズを自動的に変更します(各コントロールのサイズについては同上)。
|
上記で「RESIZE_FULL」及び「RESIZE_KEEPRATE」を選択した場合、フォーム上の各コントロールの「AutoResizeX」「AutoResizeY」の設定に応じてコントロール位置とサイズが調整されます。
AutoResizeX |
リサイズ時にどこのX軸を基準とするか。 •LEFT - 左基準 •RIGHT - 右基準 •LEFTRIGHT - 左右基準 •CENTER - 中心基準
|
AutoResizeY |
リサイズ時にどこのY軸を基準とするか。 •TOP - 上基準 •BOTTOM - 下基準 •TOPBOTTOM - 左右基準 •CENTER - 中心基準
|
フォームのStretchプロパティの設定に「STRETCH_KEEPRATE」または「RESIZE_KEEPRATE」を指定した場合、縦横比を保持して表示される影響により、グラフィック表示エリアの上下、左右に余白が発生する場合があります。ここで、余白の色はフォームの「ViewFillColor」プロパティで設定することができます。例えば、フォームの「ViewFillColor」プロパティに、フォームの「FillColor」プロパティと同じ値を設定することにより、余白部分も背景色と同じ色になり、余白を目立たなくすることができます。 |
設定例
例えば、以下のようなレイアウトの場合、Panel Browserの画面が拡大縮小された際に、タイトルのラベルや、グラフィック画面表示エリアのビューコントロールのサイズを、フォームのサイズと連動して動的に変化させるように設定することができます。
(レイアウト例)
以下は、拡大縮小に関する各プロパティの設定例です。
コントロール |
プロパティ名 |
設定例 |
説明 |
ルート |
StartupSize |
MAXIMUM |
Panel Browserの初期表示サイズを最大サイズとします。 |
|
AllowResize |
TRUE |
Panel Browserをサイズ変更可能とします。 |
|
WindowsMinWidth |
800 |
最小画面表示のサイズ(幅)を指定します。Panel Browserのサイズ変更時、このサイズより幅を狭くする事ができなくなります。 |
|
WindowsMinHeight |
600 |
最小画面表示のサイズ(高さ)を指定します。Panel Browserのサイズ変更時、このサイズより高さを狭くする事ができなくなります。 |
親フォーム |
Stretch |
RESIZE_FULL |
親フォームのストレッチモードを、RESIZE_FULLに設定することにより、Panel Browserのサイズが変更されると、フォームのサイズも連動して変化させることができます。 |
ビューコントロール |
AutoResizeX |
LEFTRIGHT |
子フォームを埋め込むビューコントロールの縦幅を、フォームのサイズ変化に連動して自動的に変化させることができるようになります。この設定により、Panel Browserの拡大縮小に応じて画面表示エリアを動的に拡大縮小させることができます。 |
|
AutoResizeY |
TOPBOTTOM |
同上。コントロールの縦幅を、フォームの拡大縮小に連動させることができます。
|
子フォーム |
Stretch |
RESIZE_KEEPRATE |
ビューコントロールに埋め込む子フォームのストレッチモードを指定します。「RESIZE_KEEPRATE」とすると、埋め込まれるフォーム自体のサイズを動的に変更します。「STRETCH_KEEPRATE」とすると、縦横比を維持して自動的に引き延ばして表示されます。表示する画面の目的に応じて適切な設定としてください。 例えば、グラフィック画面を表示したい場合は「STRETCH_KEEPRATE」が適しています。一方で、グラフなどを表示する画面では「RESIZE_KEEPRATE」が適しています。 |
|
ViewFillColor |
@FormColor |
フォームがリサイズされた際の余白の表示色です。フォームのFormColorと同じ色を指定しておくことで、余白の隙間を意識する事がなくなります。 |
フォームのストレッチに関する詳細については、「フォームのストレッチモードについて」の記述も参照してください。 |
固定サイズでの表示を行いたい場合など、親フォームのビューコントロールに埋め込む子フォームの表示を、Panel Editorによる作画時の実寸のまま、サイズ変更せずにそのまま表示したい場合があります。そのような場合は、ルートのDevelopModeプロパティをTrueにしてPanel Browserを実行することで、対象のビューの実寸サイズを調べることができます。ビューコントロールに埋め込んで表示するフォームのサイズに対して、DevelopModeによって調べたビューのサイズを指定することで、実行時に拡大縮小されずに実寸で表示されるようになります。
本件に関する詳細については、「フォームをメインエリアの実寸サイズに合わせる」の記述を参照してください。
(DevelopModeにより表示されたビューサイズ) |