# 建议

Posted by SuBird on September 30, 1999 at 09:18:44:

In Reply to: Re: 如何转换setfocus posted by Buier on September 30, 1999 at 01:58:31:

: : 请问我目前有四个text
: : txt1,txt2.txt3,txt4

: : 如何做才能在txt1按enter时游标停在txt2上
: : 在txt2按enter时游标停在txt3上
: : 以此类推呢？

: : 以上是我的程式内容，请问错在哪里呢？
: : 请各位高手帮帮忙。
: 你的程式应该没错,你可以试下面的程式看看(两个textbox).
: Private Sub Text1_KeyPress(KeyAscii As Integer)
: Form1.Caption = KeyAscii
: If KeyAscii = 13 Then
: Text2.SetFocus
: End If
: End Sub
: Private Sub Text2_KeyPress(KeyAscii As Integer)
: Form1.Caption = KeyAscii
: If KeyAscii = 13 Then
: Text1.SetFocus
: End If
: End Sub

Re:
1)同控制项尽量以阵列型式新增，ex. Text1(0),Text(1).....
2)如此上式可简略成
Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer)
If KeyAscii = 13 Then 'Enter的Ascii code
SendKeys "{tab}" '送一tab键
KeyAscii = 0 '再将按键取消
End If
End Sub
其中每个TextBox的TabIndex按顺序排列即可。
若要让按键往前跳则改为 SendKeys "+{tab}".

Follow Ups: