- 日時: 2022/03/27 12:21
- 名前: REDCHEEKS
- ウィンドウズ用のアプリの多くは、液晶ディスプレイ画面の大きさや解像度に応じて、大きさを自由に変更できるのが売りです(そうでない固定サイズのもありますが)。
以下、課題1および課題2で作成した「逃げるオシリのアルゴリズム」を例に、その設定方法について説明します。
ウィンドウの拡大・縮小自体は、別に何もしなくても、自動で出来るようになっています(むしろそれを止め固定サイズにするためには逆に設定が必要です)。 ただ、ウィンドウ上に配置したボタンや、リストボックス等のうち、どう再配置するか何を拡大するのかという定義が必要です。 それをしないと、拡大出来ても意味がありません。 これらは「アンカー」と言うもので設定します。 アンカーとは、船の錨(イカリ)の事です。
「逃げるオシリのアルゴリズム」の例で述べますと、「お仕置き開始」ボタンと、お仕置きの流れを表示するリストボックス、この2つについてアンカーの設定が必要です。
(1) 「お仕置き開始」ボタン
大きさ:ウインドウの大きさが拡大しても「お仕置き開始」ボタンそれ自体の大きさは変わらない。 位 置:常にウインドウの左下
(2) (お仕置きの流れを表示する)リストボックス
大きさ:ウインドウの大きさが拡大すれば、それに合わせ拡大し、お仕置きの流れがより詳細に表示されること。 位 置:ウインドウの上下左右から常に一定の距離を維持し、(1)の「お仕置き開始」ボタンと重ならないこと。
アンカーの初期値は、いずれも、Top(上) + Left(左)ですので、それぞれ以下のように変更する必要があります。
(1) 「お仕置き開始」ボタン
Top(上) + Left(左) ⇒ Bottom(下) + Left(左)
※ 常にウインドウの左下に配置するため、アンカーは、top(上) をやめて bottom(下)に変更する。
(2) お仕置きの流れを表示するリストボックス
Top(上) + Left(左) ⇒ Top(上) + Bottom(下) + Left(左) + Right(右)
アンカーには、Bottom(下) と Right(右) を追加し、全方位にする。
※ アンカーが全方位になることで、ウインドウが拡大した場合は、全方位に引っ張られ引き延ばされる。
実際の設定操作は、次の通りです。
(1) 「お仕置き開始」ボタン
http://mediasp.kir.jp/img20220326/imgloglog-box/img20210107212954.jpg @ Form1.cs[デザイン]タブを選択し、デザイナ画面を表示する。 A「お仕置き開始」ボタンをクリックし、選択する。 B button1 が選択されている事を確認する。 C Anchor の右にあるコンボボックスをクリックする。 D Top(上)をクリックして削除する。 E Bottom(下)をクリックして追加する。 F Bottom(下) + Left(左) になっている事を確認する。
(2) (お仕置きの流れを表示する)リストボックス
http://mediasp.kir.jp/img20220326/imgloglog-box/img20210107213940.jpg @ リストボックスをクリックし、選択する。 A listBox1 が選択されている事を確認する。 B Anchor の右にあるコンボボックスをクリックする。 C Bottom(下)をクリックして追加する。 D Right(右)をクリックして追加する。 E Top(上) + Bottom(下) + Left(左) + Right(右) になっている事を確認する。
以上で、アンカーの設定は終わりです。
|