我期待在项目运行时隐藏项目的Access背景,使其更具专业性,并使其像独立应用程序一样运行。我正在使用Access 2003,并且在加载项目时表单已经打开。我想在该表单的Private Sub Form_Open(Cancel As Integer)
中添加一些代码来隐藏Access背景。
答案 0 :(得分:1)
以下内容适用于旧版本的Access(在Access 2003上测试):
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)
来显示最小化/最大化。您也可以使用Global Const
。注意:访问将在任务栏中隐藏。
如果它不适用于Access 2010,则可以使用另一个可行的代码:http://www.tek-tips.com/faqs.cfm?fid=2562
表单必须是模态,否则无效。如果由于某种原因你搞砸了并且Access仍然在后台运行但没有在任务栏或任务管理器中显示,请再次双击任何Access项目(因为Access仍在运行,所以不会发生任何事情),然后按ALT + TAB键到达Access图标(它应该神奇地显示)。没有什么事情再次发生,因为它是隐藏的,但现在可以用ALT + F4关闭它,如果它仍然有焦点,从而阻止你重新启动你的计算机......
答案 1 :(得分:0)
在Access 2003中,一个简单的方法似乎就是制作表单 弹出 2.边框样式无 3.在表单加载事件上运行最大化命令
Private Sub Form_Load()
DoCmd.Maximize
End Sub