vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Textbox : Nur Buchstaben zulassen einfacher ? 
Autor: Fighter
Datum: 10.03.04 16:24

Kann ich in einer Textbox einfacher nur Buchstaben zulassen,
als jeden einzelnen Buchstaben freizugeben bzw. alle anderen Zeichen zu sperren ???

Es soll in meine Textbox ein Name für einen neuen Ordner angegeben werden.
Dementsprechend sollten auch nur Buchstaben darin stehen.

Bisher löse ich bei jedem Tastendruck die Abfrag aus:

ist das ein "a" ??
ist das ein "b" ??
ist das ....

Ein bißchen umständlich oder ?

Gibt es nicht:
ist das ein Buchstabe, egal ob Groß oder klein ?

Gruß Jan

Ich nutze Visual Basic 2005 Express Edition auf W2KP und XP

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Textbox : Nur Buchstaben zulassen einfacher ? 
Autor: WaldiMaywood
Datum: 10.03.04 16:37

Probier es mal damit:

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As _
  System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
        Select Case Asc(e.KeyChar)
            Case 65 To 90, 97 To 122 ' A -Z : a - z
            Case Else
                e.Handled = True
        End Select
    End Sub
Steve
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Es geht auch ... 
Autor: WaldiMaywood
Datum: 10.03.04 16:45

.. etwas kürzer und ohne Select:

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As _
  System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
        If Not ((System.Convert.ToInt32(e.KeyChar) >= 65 AndAlso _
        System.Convert.ToInt32(e.KeyChar) <= 90) OrElse _
           (System.Convert.ToInt32(e.KeyChar) >= 97 AndAlso _
           System.Convert.ToInt32(e.KeyChar) <= 122)) Then
            e.Handled = True
        End If
    End Sub


Steve
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Und wie wäre es mit... 
Autor: ModeratorDaveS (Moderator)
Datum: 10.03.04 17:15

    Dim re As New System.Text.RegularExpressions.Regex("[a-zA-ZüöäÜÖÄß]")
    Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
        e.Handled = Not re.IsMatch(e.KeyChar)
    End Sub
(Ich dachte wärst so ein Regex Fan...)
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Danke ... !!! 
Autor: Fighter
Datum: 10.03.04 17:29

Ich habe mal die RegEx-Variante genommen.
Mein Programm besteht eh schon aus so viel aus Steve´s Code

Aber herzlichen Dank Euch beiden.

Gruß Jan

Ich nutze Visual Basic 2005 Express Edition auf W2KP und XP

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Und wie wäre es mit... 
Autor: WaldiMaywood
Datum: 10.03.04 19:06

gefällt mit auch

(Ich dachte wärst so ein Regex Fan...)
nicht immer, aber manchmal ist es halt etwas einfacher mit RegEx. Auch in diesem Fall

Programmierer lernen glaub ich nie aus.....
Arbeite mit .NET erst seit 06~07/2003. Das heißt: ich muss noch ne Menge lernen wie man die Vorteile von .NET richtig einsetzt und die "neuen" Techniken an der richtige Stelle anwendet.
Aber das wird schon werden ...

Steve
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Und wie wäre es mit... 
Autor: Fighter
Datum: 15.04.04 22:01

Noch ein kleines Problemchen

Hier wird die RÜCK-Taste nicht erlaubt, die ENTF aber ja.

Ich hätte gerne Beide
Und wie mache ich das mit dem Unterstrich ?

Gruß Jan

Ich nutze Visual Basic 2005 Express Edition auf W2KP und XP

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Und wie wäre es mit... 
Autor: ModeratorDaveS (Moderator)
Datum: 15.04.04 23:28

Du kannst andere Zeichen auch zulassen, wie etwa:
"[a-zA-ZüöäÜÖÄß" & ChrW(8) & "]"
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel