TechArena Community

TechArena Community (http://forums.techarena.in/)
-   Software Development (http://forums.techarena.in/software-development/)
-   -   How do I create a textbox in vb that lets you insert tabs? (http://forums.techarena.in/software-development/1130863.htm)

Chandrakant81 26-02-2009 09:46 PM

How do I create a textbox in vb that lets you insert tabs?
 
hi

I want to create a textbox that lets user insert tabs. I dont know why this is not possible to insert tab for me in a textbox & i need to make it possible on my form. Please provide me what code i must use for this?

Geo3213 26-02-2009 09:48 PM

Re: How do I create a textbox in vb that lets you insert tabs?
 
you want to give users the ability to tab between controls AND enter tabs in the Rich Textbox. Fortunately, VB provides the tools for you to do so in the Rich Textbox control's KeyDown() event.



As you probably know, the Rich Textbox fires this event when a user presses a key while the control has the focus. Like all KeyDown() events, you can use code to determine which key the user pressed and react accordingly. To capture the Tab key and insert a tab space into the Rich Textbox control's edit area, we could use the following:

Code:

Private Sub RichTextBox1_KeyDown(KeyCode _

    As Integer, Shift As Integer)

Dim mblnTabPressed As Boolean

 

mblnTabPressed = (KeyCode = vbKeyTab)

If mblnTabPressed Then

    RichTextBox1.SelText = vbTab

    KeyCode = 0

End If

End Sub


Dino.M 26-02-2009 09:52 PM

Re: How do I create a textbox in vb that lets you insert tabs?
 
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.

Matellis 26-02-2009 09:59 PM

Re: How do I create a textbox in vb that lets you insert tabs?
 
Hi!

You want to set two properties of the textbox:

Multiline = True
Tab Stop = False

That should do it.


All times are GMT +5.5. The time now is 10:13 PM.