1

Access 2007 のフォームに全画面表示して、ツールバーなどを開かないようにする方法を誰か教えてもらえますか?

乾杯、ニック・C

4

1 に答える 1

1

これを行うにはいくつかの方法があります。私が見た中で最も滑らかなものの 1 つを以下に示します。残念ながら、私はこのコードをどこから入手したか覚えていないので、その期限がどこにあるのかを示すことはできません.

以下のコードをデータベースの新しいモジュールに投稿してください。

Global Const SW_HIDE = 0
Global Const SW_SHOWNORMAL = 1
Global Const SW_SHOWMINIMIZED = 2
Global Const SW_SHOWMAXIMIZED = 3

Private Declare Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long

Function DoAccessWindow(nCmdShow As Long)
' This function can minimize Access behind the scenes.

'Usage Examples
'Maximize window:
'       ?DoAccessWindow(SW_SHOWMAXIMIZED)
'Minimize window:
'       ?DoAccessWindow(SW_SHOWMINIMIZED)
'Hide window:
'       ?DoAccessWindow(SW_HIDE)
'Normal window:
'       ?DoAccessWindow(SW_SHOWNORMAL)
'
Dim loX  As Long
Dim loform As Form
    On Error Resume Next
    Set loform = Screen.ActiveForm
    If Err <> 0 Then 'no Activeform
      If nCmdShow = SW_HIDE Then
        MsgBox "Cannot hide Access unless a form is on screen"
      Else
        loX = apiShowWindow(hWndAccessApp, nCmdShow)
        Err.Clear
      End If
    Else
        If nCmdShow = SW_SHOWMINIMIZED And loform.Modal = True Then
            MsgBox "Cannot minimize Access with " & (loform.Caption + " ") & "form on screen"
        ElseIf nCmdShow = SW_HIDE And loform.PopUp <> True Then
            MsgBox "Cannot hide Access with " & (loform.Caption + " ") & "form on screen"
        Else
            loX = apiShowWindow(hWndAccessApp, nCmdShow)
        End If
    End If
    DoAccessWindow = (loX <> 0)
End Function

これで、DoAccessWindow() 関数を使用して Access ウィンドウをいじることができます。Access インターフェイスを完全に非表示にするため、非表示オプションをいじってみるとよいでしょう。警告の言葉です。表示するフォームは、表示するためにポップアップおよびモーダルである必要があります。

たとえば、Form_Open イベントではコード DoAccessWindow(0) を使用して Access のインターフェイスを非表示にし、Form_Close イベントでは DoAccessWindow(1) を使用してインターフェイスを再び表示することができます。

于 2009-07-18T05:17:49.317 に答える