Q:经常有人会问,如何隐藏VBA用户窗体右上角的X关闭按钮?
A:使用API可以禁用或者移除用户窗体右上角的关闭按钮,但既然它已经存在,我们何不合理地利用它呢。
默认情况下,单击用户窗体右上角的X(关闭)按钮后,将卸载该用户窗体并从内存中清除。这样,其它代码将无法再与该用户窗体进行交互。此时,我们可以略微更改关闭按钮的功能,当用户单击该按钮时,隐藏用户窗体而不是彻底卸载它。
用户窗体模板如图1所示。 图1
代码如下: Private SubbtnOK_Click() Me.Hide End Sub
Private SubbtnCancel_Click() Me.Hide End Sub
Private SubUserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then '取消X按钮的默认行为 Cancel = True Info btnCancel_Click End If End Sub
Private SubInfo() MsgBox '本用户窗体将被隐藏而不是被卸载,因此不会影响与本窗体相交互的代码.' End Sub
转载本文请注明出处。 欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。 |
|