Access アプリケーションウィンドウの操作 |
#1 ウィンドウの最大化・最小化・復元
使用例
Const SW_SHOWNORMAL = 1 'ウィンドウをアクティブにして表示します。 'ウィンドウが最小化または最大化されていた場合は、 'その位置とサイズを元に戻します。 Const SW_SHOWMINIMIZED = 2 'ウィンドウをアクティブにして、最小化します。 Const SW_SHOWMAXIMIZED = 3 'ウィンドウをアクティブにして、最大化します。 '指定されたウィンドウの表示状態を設定する。 Declare Function ShowWindow Lib "USER32" (ByVal hwnd As Long, _ ByVal nCmdShow As Long) As Long '------------------------------------------------------------ '概要 Access アプリケーションウィンドウを最大化表示します。 '------------------------------------------------------------ Sub MaxAccess() ShowWindow hWndAccessApp, SW_SHOWMAXIMIZED End Sub '------------------------------------------------------------ '概要 Access アプリケーションウィンドウを最小化表示します。 '------------------------------------------------------------ Sub MinAccess() ShowWindow hWndAccessApp, SW_SHOWMINIMIZED End Sub '------------------------------------------------------------ '概要 Access アプリケーションウィンドウを復元します。 '------------------------------------------------------------ Sub ResAccess() ShowWindow hWndAccessApp, SW_SHOWNORMAL End Sub
#2 ウィンドウの位置とサイズの指定をする
使用例
Const HWND_TOP = &H0 'ウィンドウをZオーダーの先頭に置きます。 Const HWND_TOPMOST = -1 'ウィンドウを常に最前面に表示します。 Const SWP_NOMOVE = &H2 '現在の位置を維持します(XとYを無視します) Const SWP_NOSIZE = &H1 '現在のサイズを維持します(cxとcyを無視します) Const SWP_SHOWWINDOW = &H40 'ウィンドウを表示します。 Const SC_SIZE = &HF000 Const MF_BYCOMMAND = &H0& 'ウィンドウのサイズ、位置、および Z オーダーを変更します。 'x,y,cx,cy:ピクセル単位で指定します。 Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, _ ByVal hWndInsertAfter As Long, _ ByVal x As Long, _ ByVal y As Long, _ ByVal cx As Long, _ ByVal cy As Long, _ ByVal wFlags As Long) As Long 'ウィンドウメニューのハンドルを取得します。 Declare Function GetSystemMenu Lib "user32" _ (ByVal hwnd As Long, ByVal bRevert As Long) As Long '指定されたメニューからメニュー項目を削除するか、サブメニューを分離します。 Declare Function RemoveMenu Lib "user32" _ (ByVal hMenu As Long, _ ByVal nPosition As Long, _ ByVal wFlags As Long) As Long '------------------------------------------------------------ '概要 Accsecc ウィンドウの位置とサイズを変更します。 '------------------------------------------------------------ Sub SetWindowSize() Dim lngTop As Long, lngLeft As Long, lngWidth As Long, lngBottom As Long Dim hwnd As Long lngTop = 100 lngLeft = 100 lngWidth = 768 lngBottom = 480 hwnd = Application.hWndAccessApp SetWindowPos hwnd, HWND_TOP, lngTop, lngLeft, lngWidth, lngBottom, SWP_SHOWWINDOW hwnd = GetSystemMenu(hwnd, 0) RemoveMenu hwnd, SC_SIZE, MF_BYCOMMAND End Sub