如题所述
给你一个例子:
在窗体的在text1输入任意字符,数量等于6个或按回车键,就自动把焦点切换到text2,并清空.在text2输入任意字符,只要等于4个或按回车键,就自动切换回text1,并清空.
这个要敲两次回车,不行啊,有没有其他方法?
text1跳到text2的目的是按回车就能看到text2里最后面的信息,让滚动条自动滚到最后的信息,而text2跳回text1的目的是继续编辑,就好比聊天器一样。
还是不会自动跳回到text1啊
追答按回车就跳回text1
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-09-18
把除了text1和text2以外的控件tabstop属性设为false,这样光标只会在text1和text2之间循环
第2个回答 2013-09-18
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then TextBox2.SetFocus
End Sub
Private Sub TextBox2_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then TextBox1.SetFocus
End Sub追问
If KeyCode = 13 Then TextBox2.SetFocus
End Sub
Private Sub TextBox2_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then TextBox1.SetFocus
End Sub追问
这个要敲两次回车,不行啊,有没有其他方法?
text1跳到text2的目的是按回车就能看到text2里最后面的信息,让滚动条自动滚到最后的信息,而text2跳回text1的目的是继续编辑,就好比聊天器一样。
第3个回答 2013-09-18
text1回车跳到text2的代码是
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If KeyAscii = 13 Then TextBox2.SetFocus
End Sub
跳到text2后跳回text1的触发条件是什么?目的是什么?
VBA中事件也少,要告知才能使光标从text2跳回text1追问
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If KeyAscii = 13 Then TextBox2.SetFocus
End Sub
跳到text2后跳回text1的触发条件是什么?目的是什么?
VBA中事件也少,要告知才能使光标从text2跳回text1追问
text1跳到text2的目的是按回车就能看到text2里最后面的信息,让滚动条自动滚到最后的信息,而text2跳回text1的目的是继续编辑,就好比聊天器一样。
追答Private Sub Text2_Change()
Text1.SetFocus
End Sub
试试chang事件
试了没效果,大神还有其他方法吗?