setechdiv@wiki

備忘録201008

最終更新:

Bot(ページ名リンク)

- view
管理者のみ編集可

2010/08/26


1.コンボボックス、リスト、テキストボックスからなる
  汎用フォームを作成する。
2.管理テーブルに、そのフォームを利用する画面の基本情報を書く。
3.汎用フォームは呼び出しの引数に応じて、
  コントロールのサイズやソースを変更する。

そんな汎用画面を作成中、
1つだけテキストボックス(編集エリア)が
どうしても大きくせざるを得ない画面があり、
そいつがいるためにフォームは大画面で保たれていた。
他の画面ではテキストボックス1行、10文字程度のものもあり、
そんな画面では汎用フォームはやたらにばかでかく閑散とするのだった。

なので、テキストボックスに合わせてフォームサイズも変更しちゃおうと
 Docmd.Movesize
コマンドを使用して、フォームのサイズを調整するよう変更した。

すると・・・!

コードでもレイアウトでもいじっていないはずのコンボボックスが、
びよ~んと伸びたり縮んだりするではないか!!!
何事!?

Docmd.Movesizeには過はないようである。
実はこれ、コンボボックスのプロパティに原因があった。
「垂直アンカー」
「水平アンカー」

あれ?これだけ他のコントロールと設定値違くない?

このアンカーというのは、
フォームのサイズ変更に際して、
コントロールをどのように振舞わせるか設定する部分らしい。
「両方」と設定すれば、フォームの両端に影響を受け、
「右」なら右合わせ、
「左」なら左合わせ

はあ~ぁ、
これに1時間弱使っちゃった。。。

記事メニュー
ウィキ募集バナー