Textboxen - Einstellen

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von HEREZnfos.

    Textboxen - Einstellen

    Hallo !
    Was ich möchte:

    Ein programm das eine textbox beinhaltet, diese textbox hat als text eingetragen "Hier den Serien Code eintragen." ich will das sobald jemand auf diese box klickt & etwas schreibt sich
    "Hier den Serien Code eintragen." entfernt.

    Der nutzer sollte nun den Serien Code hinein kopieren ! Aber was ist wenn er es von Hand schreibt ? Deshalb will ich das nach jeder 4ten nummer ein "leerzeichen - "leerzeichen auftaucht, außer hinter der letzten Zahl.

    Wäre cool wenn mir jemand diese geheimniese erklären könnte oder wennigstens die codes dafür zu hinterlassen, liebe grüße und danke im vorraus !
    Hi
    schau' dir mal die MaskedTextBox an. Diese unterstützt diese Art der Formatierung. Die hat dann auch ein TextChanged- und ein GotFocus-Ereignis, in dem du auf die Änderungen bzw. den Fokus reagieren kannst (z.B. Text auf String.Empty setzen, frag' aber bei TextChanged vorher ab, ob der Text bereits String.Empty ist, sonst erhöltst du einen Stapelüberlauf, da das Setzen der Text-Eigenschaft wieder ein Auslösen von TextChanged bedingen würde und das wiederum das Setzen der Text-Eigenschaft herbeiführen würde, usw.), allerdings wird kein richtiger Standardtext akzeptiert, sofern du das nicht über Maske und Text löst.

    Gruß
    ~blaze~

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „~blaze~“ ()

    Mal schrittweise:
    - Ersetze die TextBox durch eine MaskedTextBox
    - Konfiguriere und Programmiere die MaskedTextBox so, dass sie deinen Wünschen entspricht:
    Abonniere das GotFocus-Ereignis, sodass du darin Mask auf die zugehörige Maske (siehe MSDN-Beschreibung, man beachte, dass mit eine, eines, etc. "a" gemeint ist, das ist ein genialer Übersetzungsfehler) setzen kannst. Den Text setzt du dort auf String.Empty und du setzt Farbe, Schriftart, etc. auf Standard zurück:

    VB.NET-Quellcode

    1. Private Sub _myMaskedTextBox_GotFocus(ByVal sender As Object, ByVal e As EventArgs) Handles _myMaskedTextBox.GotFocus
    2. _myMaskedTextBox.Font = SystemFonts.DefaultFont
    3. _myMaskedTextBox.Text = String.Empty
    4. _myMaskedTextBox.ForeColor = SystemColors.ControlText
    5. _myMaskedTextBox.Mask = "AAAA-AAAA"
    6. End Sub

    - als Standardformatierung und -inhalt legst du jetzt im Eigenschaftenfenster entsprechende Eigenschaften fest

    Übrigens: Falls irgendwelche Passagen oder Erklärungen nicht verständlich sind, ist es zielführend, als erstes eine Suchmaschine anzuschmeißen ;).

    Gruß
    ~blaze~

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „~blaze~“ ()