Wie kann ich es machen das wenn ich in eine textbox einen wert eintrage, das es diesen löscht sobald der wert nicht zwischen 1 und 6 liegt und, oder kein komma enthällt?
Announcement
Collapse
No announcement yet.
VB: Wie kann ich eine Textbox.....
Collapse
X
-
Hallo,
dazu kann das <b>KeyPress</b>-Ereignis genutzt werden, um dort die Eingabe von Buchstaben etc. zu verhindern. Der Rückgabewert von <i>KeyPressEventArgs.Handled</i> legt fest, ob dieses Ereignis abschließend bearbeitet wurde. Übergibt das Programm den Wert <i>True</i>, so ignoriert das Formular (Control) diese Eingabe. In VB.NET sieht das zum Beispiel so aus:
<pre>
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
Dim sKeyStroke As Char
Dim sNULL As Char = Chr(0)
sKeyStroke = e.KeyChar
Select Case sKeyStroke
Case "1" To "6", vbBack, vbCr
' erlaubte Zeichen -> nichts machen
Case "-"
' erlaubtes Zeichen -> nichts machen
Case ","
' erlaubtes Zeichen -> nichts machen
Case Else
sKeyStroke = sNULL
End Select
If sKeyStroke = sNULL Then
e.Handled = True
Else
e.Handled = False
End If
End Sub
</pre>
Comment