【发布时间】:2014-05-12 15:17:51
【问题描述】:
我在 Access 2010 中使用 VBA 代码完成了我的数据库的登录表单。我希望能够在 txtboxPassword 上按 Enter 并自动执行 btnLogin_Click 事件。我试过这个:
Private Sub txtboxPassword_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 13 Then
btnLogin_Click
End If
End Sub
我得到的是一个自制的错误,提示密码不正确。如果我调试,我发现 txtPassword 实际上是 null,但我只是在其中输入了文本!
但是,如果我用鼠标单击登录按钮,它就可以完美运行。为什么 vba 会这样?我怎样才能让它发挥作用?
注意我也试过:
- KeyPress:按下Enter后焦点转到
btnLogin(也可能是因为tab顺序是这样的),但btnLogin_Click事件没有执行。 - KeyUp:与 KeyPress 相同。
【问题讨论】:
-
txtPassword为空是什么意思?文本框有一个Text属性。但那个通常是一个空字符串,但不是null。 -
在调试模式下,我将鼠标悬停在 txtboxPassword.Value 上,我得到
null
标签: vba ms-access ms-access-2010