In the example below, the Text2 box will accept and hold TAB keystrokes, keeping them in the Text property along with the other entered characters. The Text1 and Text3 boxes will not accept TAB keystrokes. When Text1 and Text3 have the focus, pressing the TAB key changes the focus to the next control in the tab order.
1. Start a new project in Visual Basic. Form1 is created by default.
2. Add three text boxes (Text1, Text2, and Text3) to Form1. Select the Text2 box and press the F4 key to display the Properties window. Set the MultiLine property of Text2 to True.
NOTE: When you press the TAB key, single-line text boxes beep and do not accept the TAB keystroke, but multiLine text boxes do accept TAB keystrokes.
3. Double-click the Text2 box to open the code window. Choose the GotFocus event from the Proc box. Add the following code to the Text2 GotFocus event:
Code:
Sub Text2_GotFocus ()
' When Text2 gets the focus, clear all TabStop properties on all
' controls on the form. Ignore all errors, in case a control does
' not have the TabStop property.
On Error Resume Next
For i = 0 To Controls.Count - 1 ' Use the Controls collection
Controls(i).TabStop = False
Next
End Sub
# NOTE: See the "Controls Collection" section below for an explanation of the Controls collection.
4. Choose the LostFocus event from the Proc box. Add the following code to the Text2 LostFocus event:
Code:
Sub Text2_LostFocus ()
' When Text2 loses the focus, make the TabStop property True for all
' controls on the form. That restores the ability to tab between
' controls. Ignore all errors, in case a control does not have the
' TabStop property.
On Error Resume Next
For i = 0 To Controls.Count - 1 ' Use the Controls collection
Controls(i).TabStop = True
Next
End Sub
5. Start the program, or press the F5 key. Press the TAB key to give focus to Text2. Enter text into the Text2 box, pressing the TAB key as needed. Whenever Text1 or Text3 has the focus, pressing the TAB key moves the focus to the next control. Whenever Text2 has the focus, TAB keystrokes remain with the text in the text box. Close the form to end the program.
Bookmarks