JohnRock
asked on
Tab order
I want the tab key to be associated with the Return key.If I had 3 text boxes on a form and my focus was on the first text box and I hit the enter key, I would like the tab to jump to the next text box. The keypress and keydown events don't capture the enter or tab key.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
2 ways:
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
KeyAscii = 0
SendKeys "{TAB}"
End If
End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
KeyAscii = 0
Text3.SetFocus
End If
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
KeyAscii = 0
SendKeys "{TAB}"
End If
End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
KeyAscii = 0
Text3.SetFocus
End If
End Sub
"I want the tab key to be associated with the Return key"
No you don't. Not if you want your application to behave like a good windoze application.
No you don't. Not if you want your application to behave like a good windoze application.
Depends on the application. It's nice to use ENTER to move between single-line fields when entering data. QuickBooks does this, for example.
Erick, do you really think so?
Compare
Test{left pinky}more text{left pinky}more text{left pinky}
to
Test{right pinky}more text{right pinky}more text{right pinky}
Much the same. Except, one is standard windows behaviour, the other is something that dates back to the good old days of DOS.
And I think it's time we left those days behind us.
Compare
Test{left pinky}more text{left pinky}more text{left pinky}
to
Test{right pinky}more text{right pinky}more text{right pinky}
Much the same. Except, one is standard windows behaviour, the other is something that dates back to the good old days of DOS.
And I think it's time we left those days behind us.
I'm not a touch typer, so it's easier for me to find the Enter key than the Tab key.
A single line TextBox does not use the Enter key anyway, so why not give it a use?
The user will discover this very quickly and either use it or not. The Tab functionality is not discarded.
A single line TextBox does not use the Enter key anyway, so why not give it a use?
The user will discover this very quickly and either use it or not. The Tab functionality is not discarded.
Haha, no Erick, that one won't wash with me.
If you're into mass data entry, believe me, you *are* a touch typist.
<wink>
If you're into mass data entry, believe me, you *are* a touch typist.
<wink>
here od, iu exa.p;w of tpivj tuopmg
translated:
here is my example of touch typing
:)
translated:
here is my example of touch typing
:)
<g>
That should have been
\jrtr od ,u rcs,[;r pg yupivj yu[omh/
That should have been
\jrtr od ,u rcs,[;r pg yupivj yu[omh/
Or...
Y843B 8W J6 3SQJ0O3 9R 65697DY 56038HTL
(complete with a typing mistake, I think)
But seriously.... If you go to a place where they employ people whose job it is to enter large amounts of data, you can rest assured that they *will* employ touch typists to do the job.
Yes, I'll admit it... I am a touch typist. But I therefore can appreciate how easy it is to adapt to such a slight difference as changing from using your right pinky to your left pinky. It'll take an experienced touch typist at most a day to get used to it.
Y843B 8W J6 3SQJ0O3 9R 65697DY 56038HTL
(complete with a typing mistake, I think)
But seriously.... If you go to a place where they employ people whose job it is to enter large amounts of data, you can rest assured that they *will* employ touch typists to do the job.
Yes, I'll admit it... I am a touch typist. But I therefore can appreciate how easy it is to adapt to such a slight difference as changing from using your right pinky to your left pinky. It'll take an experienced touch typist at most a day to get used to it.
Using <enter> as <tab> is ok. Using <tab> as <enter> is a no-no.
You can't easily intercept <tab> as it's not normally passed in the key events (It *is* but only if no control has the .TabStop property set True).
M
You can't easily intercept <tab> as it's not normally passed in the key events (It *is* but only if no control has the .TabStop property set True).
M
If I understand the question correctly, JohnRock wants to make the Enter key act as the Tab key.
"... I hit the enter key, I would like the tab to jump to the next text box"
"... I hit the enter key, I would like the tab to jump to the next text box"
Yep. I don't see a problem with that. I think you can do it at the form level if you set the forms KeyPreview to True then you can have:
private sub Form_KeyDown(keyascii as integer...)
if keyascii = vbEnter then keyascii = vbTab
end sub
I *think* that will work - haven't tested it.
M
private sub Form_KeyDown(keyascii as integer...)
if keyascii = vbEnter then keyascii = vbTab
end sub
I *think* that will work - haven't tested it.
M
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then KeyAscii = 0
End Sub