Hallo zusammen,
Ich habe mir eine Textbox Klasse erstellt die nur Uhrzeiten zulässt.
Hier funktioniert aber die Delete taste nicht, und wie kann ich da eine Überschreib Funktion hinzufügen.
Wer kann mir da Helfen?
anbei mein Code
(VB 2012 Net 4.5)
Spoiler anzeigen
Ich habe mir eine Textbox Klasse erstellt die nur Uhrzeiten zulässt.
Hier funktioniert aber die Delete taste nicht, und wie kann ich da eine Überschreib Funktion hinzufügen.
Wer kann mir da Helfen?
anbei mein Code
(VB 2012 Net 4.5)
VB.NET-Quellcode
- Public Class UhrzeitTextbox
- Inherits TextBox
- Protected Overrides Sub OnKeyPress(ByVal e As _
- System.Windows.Forms.KeyPressEventArgs)
- MyBase.OnKeyPress(e)
- Select Case Len(MyBase.Text) ' Nur Uhrzeit in Textbox zulassen
- Case 0
- Select Case Asc(e.KeyChar)
- Case 8, 48 To 50
- Case Else
- e.Handled = True
- End Select
- Case 1
- If (MyBase.Text) = "2" Then
- Select Case Asc(e.KeyChar)
- Case 8, 48 To 51
- Case Else
- e.Handled = True
- End Select
- Else
- Select Case Asc(e.KeyChar)
- Case 8, 48 To 57
- Case Else
- e.Handled = True
- End Select
- End If
- Case 2
- Select Case Asc(e.KeyChar)
- Case 8, 48 To 53, 58
- If Asc(e.KeyChar) <> 58 Then MyBase.Text = _
- MyBase.Text & ":" ' Automatisches einfügen des Doppelpunktes()
- MyBase.SelectionStart = Len(MyBase.Text) + 2
- Case Else
- e.Handled = True
- End Select
- Case 3
- If (MyBase.Text) = ":" Then
- Select Case Asc(e.KeyChar)
- Case 8, 48 To 53
- Case Else
- e.Handled = True
- End Select
- End If
- Case 4
- Select Case Asc(e.KeyChar)
- Case 8, 48 To 57
- Case Else
- e.Handled = True
- End Select
- Case Else
- e.Handled = True
- End Select
- End Sub
- End Class