Access2007の新機能に関するトピックです。Access2007のフォームに追加された「アンカー」の機能を使うことによって、Access本体あるいはフォームのウィンドウサイズが変わったとき、それに連動してコントロールの位置やサイズを自動調整させることができます。
たとえば、「水平アンカー」プロパティには”左”・”右”・”両方”の3つのうちからアンカーの種類を設定することができます。
- ”左”に設定した場合、フォームのサイズが変わってもフォーム左端からの位置(コントロールの左位置プロパティ値)が保持されます。よって常にフォームの左側にコントロールが付いた状態です。
- ”右”に設定した場合、フォームのサイズが変わると、常にフォーム右端からの位置がデザイン時のまま保持されます。よって、フォームの幅が変わっても常にコントロールがフォーム右側に張り付いたような感じで位置変更が行われます。
- ”両方”に設定すると、フォームの幅が変更されても、コントロールの左位置はデザイン時の値が保持されます。さらにフォーム右端からの位置もデザイン時のままです。コントロールの左端・右端とフォーム左端・右端の距離はいつでも変わりません。その結果コントロールはどのような変化をするかというと、フォームの幅に合わせてコントロールの”幅が自動的に変わる”ような動きになります。
ここでは、フォームに四角形コントロールを配置し、その「水平アンカー」プロパティならびに「垂直アンカー」プロパティをいくつかのバリエーションで設定したときの、画面表示の違いを示します。
なお、通常サイズのときはいずれ設定においても、デザイン時の幅・高さや上位置・左位置プロパティに従ってデフォルト設定で表示されますので、(タブとして表示する場合などは除いて)どの設定でも基本的に同じ表示となります。
- デフォルト設定のとき(水平アンカーは”左”、垂直アンカーは”上”)
通常サイズのとき

フォームのウィンドウを大きくしたとき

- 水平アンカーのみ”両方”にしたとき

- 垂直アンカーのみ”両方”にしたとき

- 水平アンカー・垂直アンカーともに”両方”にしたとき

- 水平アンカーを”右”、垂直アンカーを”下”にしたとき
|