首页 > 数据库 > Access > 正文

怎样用代码隐藏、最大化、最小化ACCESS的主窗口

2020-03-24 19:19:09
字体:
来源:转载
供稿:网友
(问) 怎样用代码隐藏、最大化、最小化ACCESS的主窗口? (答) 通过一函数已定义的常量fSetAccessWindow实现。 该函数能用来完全隐藏Access窗口并将你自己的窗体显示在桌面上。在弹出式窗体的Open事件中使用SW_HIDE参数调用fSetAccessWindow函数实现。 注意:如果你隐藏了Access主窗口,要确定你有良好的出错处理。因为主窗口隐藏后,一旦引发错误,并出错提示窗口上点击了“结束”按钮,这样不会使Access主窗口可见,并退出你自己的窗体。推荐你在你的错误处理程序中使用SW_SHOWNORMAL参数调用fSetAccessWindow函数来显示Access主窗口。 如果由于别的原因,Access主窗口不能显示,那么你将只能从任务栏中关闭你的mdb,在Win9x中使用Control-Alt-Delete来结束任务,在WinNT、2000或XP中,可以右键单击任务栏选择html' target='_blank'>任务管理器来选择该mdb结束任务。'************代码开始**********
GlobalConstSW_HIDE=0
GlobalConstSW_SHOWNORMAL=1
GlobalConstSW_SHOWMINIMIZED=2
GlobalConstSW_SHOWMAXIMIZED=3 PrivateDeclareFunctionapiShowWindowLib"user32"_
Alias"ShowWindow"(ByValhwndAsLong,_
ByValnCmdShowAsLong)AsLong
FunctionfSetAccessWindow(nCmdShowAsLong)
'使用举例
'最大化Access窗口
' ?fSetAccessWindow(SW_SHOWMAXIMIZED)
'最小化Access窗口
' ?fSetAccessWindow(SW_SHOWMINIMIZED)
'隐藏Access窗口
' ?fSetAccessWindow(SW_HIDE)
'正常显示Access窗口
' ?fSetAccessWindow(SW_SHOWNORMAL)
'
DimloX AsLong
DimloFORMAsFORM
OnErrorResumeNext
SetloFORM=Screen.ActiveFORM
IfErr 0Then'没有活动窗体noActiveFORM
IfnCmdShow=SW_HIDEThen
MsgBox"除非屏幕上有一个窗口,否则不能隐藏Access主窗口!"_
vbcr vbcr _
"CannothideAccessunless"_
"aFORMisonscreen"
Else
loX=apiShowWindow(hWndAccessApp,nCmdShow)
Err.Clear
EndIf
Else
IfnCmdShow=SW_SHOWMINIMIZEDAndloFORM.Modal=TrueThen
MsgBox"不能由屏幕上的" (loFORM.Caption+"") "窗体最小化Access主窗口!"_
vbcr vbcr _
"CannotminimizeAccesswith"_
(loFORM.Caption+"")_
"FORMonscreen"
ElseIfnCmdShow=SW_HIDEAndloFORM.PopUp TrueThen
MsgBox"不能由屏幕上的" (loFORM.Caption+"") "窗体隐藏Access主窗口!"_
vbcr vbcr _
"CannothideAccesswith"_
(loFORM.Caption+"")_
"FORMonscreen"
Else
loX=apiShowWindow(hWndAccessApp,nCmdShow)
EndIf
EndIf
fSetAccessWindow=(loX 0)
EndFunction
'************代码结束**********html教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表