Hallo zusammen,
ich habe eine Textbox in welcher nur maximal 2 Zeichen (nur Zahlen) eingegeben werden dürfen.Es ist so, das jede Ziffer geprüft wird und der Wert auch nur von 0 bis 30 sein darf. Hier liegt das Problem, wie kann ich prüfen, dass es die Eingabe nur zwischen 0 und 30 ist? Wenn darüber, dann soll eine Fehlermeldung kommen...
Das nächste Problem ist, dass ich so, wie es jetzt ist, keine 10 oder 20 eingeben kann, da schon die 1 auslösen würde. Wie kann ich das ändern?
Bisher bin ich soweit gekommen :
ich habe eine Textbox in welcher nur maximal 2 Zeichen (nur Zahlen) eingegeben werden dürfen.Es ist so, das jede Ziffer geprüft wird und der Wert auch nur von 0 bis 30 sein darf. Hier liegt das Problem, wie kann ich prüfen, dass es die Eingabe nur zwischen 0 und 30 ist? Wenn darüber, dann soll eine Fehlermeldung kommen...
Das nächste Problem ist, dass ich so, wie es jetzt ist, keine 10 oder 20 eingeben kann, da schon die 1 auslösen würde. Wie kann ich das ändern?
Bisher bin ich soweit gekommen :
VB.NET-Quellcode
- Private Sub TextBox1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
- Select Case Asc(e.KeyChar)
- Case 48 To 57, 8, 52 '48 bis 57 = Zahlen 0 bis 9 + 8 = Backspace/Rücktaste + 52 = Entf/Delete Taste
- Case Else
- e.Handled = True
- End Select
- If TextBox1.Text.Length = 1 Then 'wenn 2 Zeichen erreicht dann
- With TextBox1.Text
- Select Case True
- Case .Contains("0")
- MsgBox("blubb")
- Case .Contains("1")
- MsgBox("blubb1")
- '.
- '.
- '.
- Case .Contains("29")
- MsgBox("blubb29")
- Case .Contains("30")
- MsgBox("blubb30")
- End Select
- End With
- End If
- End Sub
- Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
- If e.KeyCode = Keys.Enter Or e.KeyCode = Keys.Tab Then
- '...Wenn Enter oder Tabulator gedrückt wurde
- With TextBox1.Text
- Select Case True
- Case .Contains("0")
- MsgBox("blubb")
- Case .Contains("1")
- MsgBox("blubb1")
- '.
- '.
- '.
- Case .Contains("29")
- MsgBox("blubb29")
- Case .Contains("30")
- MsgBox("blubb30")
- End Select
- End With
- End If
- End Sub