我想永久隐藏访问窗口。我有一个自动执行宏,最初会隐藏窗口,但如果用户单击任务栏上的数据库图标,如果出现在我的表单后面,那就相当烦人了。我想知道是否有一种方法可以将其保留下来,而不必在每个地方复制隐藏窗口宏
以下内容适用于旧版本的访问(来源:http://www.vbaexpress.com/kb/getarticle.php?kb_id=74):
Option Compare Database
Option Explicit
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 fSetAccessWindow(nCmdShow As Long)
Dim loX As Long
Dim loForm As Form
On Error Resume Next
Set loForm = Screen.ActiveForm
If Err <> 0 Then
loX = apiShowWindow(hWndAccessApp, nCmdShow)
Err.Clear
End If
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
fSetAccessWindow = (loX <> 0)
End Function
只需拨打
fSetAccessWindow(0)
即可隐藏,拨打 fSetAccessWindow(1)
即可显示。或者,您可以使用 fSetAccessWindow(2)
和 fSetAccessWindow(3)
显示最小化/最大化。该应用程序也将从任务栏隐藏,防止用户单击它。
如果它不适用于 Access 2010,您还可以尝试以下操作:http://www.tek-tips.com/faqs.cfm?fid=2562
我多年前在xp和7 32位上使用过这个函数代码,现在将其修改为win10 64位,除了报告之外它仍然有效。该功能隐藏报告预览,它只是发送到打印机,并且应用程序在发送时挂起