如何在VBA表单中按下回车后保持文本框的焦点?
以下代码将文本添加到列表框中,我想保持焦点在文本框上,以准备接收另一个项目。
当我点击添加按钮时,它会将文本添加到列表框并将焦点返回到文本框,但是当我按下回车键时,尽管使用相同的代码,它却没有这样做。有什么建议吗?
这是我的文本框代码:
Private Sub TxtOtherAsset_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then
CmdAddOtherAsset_Click
End If
End Sub
这是我按钮的代码:
Private Sub CmdAddOtherAsset_Click()
If TxtOtherAsset.Text <> "" Then
ListAddedAssets.AddItem TxtOtherAsset.Text
TxtOtherAsset.Text = ""
End If
TxtOtherAsset.SetFocus
End Sub
我尝试了几种方法,但无法将焦点返回到文本框。按下回车键后,焦点会跳转到TabIndex中的下一个。
KeyCode = 0
- 这行代码太棒了!我花了1-2个小时在谷歌上搜索,尝试各种解决方案(甚至是绝望的.NET或VB6相关的),测试其他事件,因为我已经对KeyDown
失去了希望... 直到我找到了这篇黄金文章! - ZygD