我目前正在使用 MS Access VBA 进行编程。我有一个带有文本框的表单。我正在文本框的 LostFocus 事件上执行一些代码。
但是,当我使用鼠标关闭表单并单击表单右上角的关闭按钮时,将光标放在文本框中,我注意到 LostFocus 事件在 Form_Unload 事件之前执行。
有没有办法避免这种情况?
另外,我在哪里可以找到事件的优先级?或者 VBA 中的优先级是如何确定的?
编辑:
我的确切应用是这样的。我在 MS Access 中有一个表单,用于接受用户的登录凭据。
我想禁用密码和登录按钮的文本框,直到输入有效的用户名。我在 onLostFocus 事件中检查用户名是否有效。现在,考虑一个在用户名文本框中没有输入任何内容就关闭此表单的情况。在这种情况下,onLostFocus 事件会在 Form_Unload 事件之前执行。
但是,对于正常操作,我需要 onLostFocus 事件,因为在该事件中我启用了密码文本框和登录按钮。
能不能有别的办法??