フォームやレポートのウィンドウサイズをAccessのMDIウィンドウ内のサイズに合わせる方法
-
手順
-
下記のAPIを定義します。
GetTopWindow GetClassName GetNextWindow GetClientRect GetDC GetDeviceCaps ReleaseDC
- GetTopWindowでAccessの子ウィンドウの中の最上位ウィンドウを取得します。
引数はAccessのウィンドウハンドル(Application.hWndAccessApp)です。 - GetClassNameでウィンドウクラス名を取得します。
- ウィンドウクラス名がMDIClientであればウィンドウハンドルを取得し[No.5]に進みます。
そうでなければGetNextWindowで次のウィンドウを取得し[No.3]にもどります。 - [No.4]で取得したウィンドウハンドルを使用してGetClientRectを呼び出しMDIウィンドウのクライアント領域を取得します。
- [No.4]で取得したウィンドウハンドルを使用してGetDCを呼び出しデバイスコンテキストを取得します。
- [No.6]で取得したデバイスコンテキストを使用してGetDeviceCapsを呼び出し1論理インチあたりのピクセル数を取得します。
- [No.5]で取得したクライアント領域サイズと[No.7]で取得した1論理インチあたりのピクセル数を使用してTWIP値に変換します。
- Docmd.MoveSizeでウィンドウサイズを変更します。
※AccessのVBAおよびAPIの知識が必要です。
-
スポンサーリンク
フォームやレポートのウィンドウサイズをAccessのMDIウィンドウ内のサイズに合わせる方法のサンプル
1 ファイル 20.68 KB
スポンサーリンク
スポンサーリンク
説明がわからないなどありましたらお問い合わせでお知らせください。
ここに掲載された情報を使用したことによって発生した、いかなる損害に対しても
管理者である雅は一切責任を負いません。