UserForm关闭事件

时间:2016-01-01 13:26:31

标签: vba userform

我有一个UserForm,它在一个条件存在的情况下在循环中打开和关闭。用户可以单击执行操作的多个按钮。问题是用户的不可预测性。其中一个问题是,用户不是单击其中一个按钮,而是单击UserForm顶部的关闭窗口按钮,该按钮进行循环而不执行操作。

---编辑---
是否有一个带有该按钮的事件,我可以使用该按钮执行代码,以便我可以让它执行与表单本身上的取消按钮相同的操作。我本身不需要隐藏或禁用它。

2 个答案:

答案 0 :(得分:8)

例如,您可以将以下宏添加到UserForms代码模块:

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    If CloseMode = vbFormControlMenu Then
        Cancel = True
        MsgBox "You can't close the dialog like this!"
    End If
End Sub

答案 1 :(得分:2)

代替MsgBox,您只需聚焦按钮即可:

    <data>
      <import type="com.amelio.utils.PreferenceUtil"/>
 </data>


<TextView
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text='@{PreferenceUtil.getSavedUser()}' />

已编辑:我发现了一个更好的选择:

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    If CloseMode = vbFormControlMenu Then
        Cancel = True
        Me.Close_Button.SetFocus
    End If
End Sub