vba禁用窗体标题栏的关闭按钮
2016年8月11日
作者: 来源:
如果不希望用户通过窗体标题栏的关闭命令来关闭窗体,可以禁用窗体标题栏上的关闭按钮,如下面的代码所示。 #001 Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) #002 If CloseMode <> 1 Then #003 Cancel = True #004 MsgBox "请点击其它按钮关闭窗体!" #005 End If #006 End Sub 代码解析: 窗体的QueryClose事件,禁用窗体标题栏上的关闭按钮。 窗体的QueryClose事件发生在窗体关闭之前,语法如下: Private Sub UserForm_QueryClose(cancel As Integer, closemode As Integer) 参数Cance是可选的,整数。将此参数设置成 0 以外的任意值,在所有加载的用户窗体中停止QueryClose事件,并防止关闭窗体与应用程序。 参数closemode是可选的,一个值或常数,用来指示引起QueryClose事件的原因。 closemode参数的设置值如下表所示。 常数 值 描述 vbFormControlMenu 0 用户在 UserForm上选择“控制”菜单中的“关闭”命令 VbFormCode 1 由代码调用 Unload 语句 vbAppWindows 2 正在结束当前 Windows 操作环境的过程。(仅用于Visual Basic 5.0 ) vbAppTaskManager 3 Windows 的“任务管理器”正在关闭这个应用。(仅用于Visual Basic 5.0 )
第2、3行代码,如果窗体不是由代码调用Unload语句关闭,则停止关闭过程,从而禁用窗体标题栏的关闭按钮。 需要注意的是,一定要在窗体上设置关闭窗体的途径,否则会使窗体无法关闭。 窗体运行后,禁用窗体上的关闭按钮关闭窗体,只能使用其它按钮关闭窗体。
阅读:3207
上一则:vba在用户窗体标题栏添加最大最小化按纽
下一则:深圳万博教学方法优势显著
|