automatisch bindestrich setzen

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von wincnc.

    automatisch bindestrich setzen

    hi

    habe mal wieder eine frage:

    wie kann ich nach einer bestimmten anzahl von zeichen automatisch einen bindestrich setzen ?

    genauer: ich habe ein formular, wo eine seriennummer eingegeben werden muss. nun habe ich einen bestimmten aufbau bei dieser seriennummer. (000000-0000-000000-0000-000000) , also 6,4,6,4,6 !

    wie gesagt. ich möchte gerne, dass in dem textfeld automatisch nach 6 bzw. 4 zeichen ein bindestrich gestzt wird.

    ich hoffe, das ihr mir weiterhelfen könnt.

    danke bereits im voraus.
    gibt es dafür auch noch eine andere variante ?

    also mit einer ganz normalen textbox? das mit der mask gefällt mir nicht, weil immer so blöde unterstriche da sind.


    das was ich gerne möchte:
    ein beispiel: jeder von euch kennt office 2007 und dafür hoffentlich auch die installation. wenn man dort die seriennummer eingibt, also die ersten 5 zeichen, dann wird automatisch ein bindestrich gesetzt. man kann weiterschreiben ohne das zu beachten.

    hoffe, dass ihr euch auskennt und mir weiterhelfen könnt.

    danke bereits im voraus.
    On TextBox1.KeyPress[...]

    Quellcode

    1. If TextBox1.TextLength="6" Then
    2. TextBox1.Text=TextBox1.Text & "-"
    3. Elseif TextBox1.TextLength="10" Then
    4. TextBox1.Text=TextBox1.Text & "-"
    5. ' USW USW
    6. End If


    Das nur als Ansatz, ich arbeite bei Seriennummern immer mit mehreren Textboxen wo der Cursor von der einen zur nächsten springt.
    Hallo, hier ein Beispiel:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    3. Me.TextBox1.MaxLength = 30
    4. End Sub
    5. Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
    6. Dim tLength As Integer = Me.TextBox1.Text.Length
    7. Select Case tLength
    8. Case 6, 11, 18, 23
    9. Me.TextBox1.Text = Me.TextBox1.Text & "-"
    10. Me.TextBox1.SelectionStart = Me.TextBox1.Text.Length
    11. End Select
    12. End Sub
    13. End Class