Wie kann ich nur Zahlen in einer TextBox erlauben?
Im KeyPress-Event kann man das gedrückte Zeichen abfragen und ggf verbieten indem es auf 0 gesetzt wird.
API-Variante von Pascal:
in VB.net:
Keywords: Visual Basic 6, VB 6, VB.net, VB 2005, Textbox, Eingabe, Nur Zahlen, Asc, Key Press, Key Down, KeyAscii, KeyChar
Im KeyPress-Event kann man das gedrückte Zeichen abfragen und ggf verbieten indem es auf 0 gesetzt wird.
API-Variante von Pascal:
VB.NET-Quellcode
- Option Explicit
- Private Declare Function GetWindowLong Lib "user32.dll" Alias "GetWindowLongA" ( _
- ByVal hwnd As Long, _
- ByVal nIndex As Long) As Long
- Private Declare Function SetWindowLong Lib "user32.dll" Alias "SetWindowLongA" ( _
- ByVal hwnd As Long, _
- ByVal nIndex As Long, _
- ByVal dwNewLong As Long) As Long
- Private Const ES_NUMBER As Long = &H2000&
- Private Const GWL_STYLE As Long = -16
- Private Sub Form_Load()
- Dim lngRetSWL As Long
- lngRetSWL = SetWindowLong(Form1.Text1.hwnd, GWL_STYLE, _
- GetWindowLong(Form1.Text1.hwnd, GWL_STYLE) Or ES_NUMBER)
- If lngRetSWL = 0 Then
- MsgBox "Error"
- Else
- MsgBox "Success"
- End If
- End Sub
in VB.net:
VB.NET-Quellcode
- Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
- Select Case Asc(e.KeyChar)
- Case 48 To 57, 8, 32
- ' Zahlen, Backspace und Space zulassen
- Case Else
- ' alle anderen Eingaben unterdrücken
- e.Handled = True
- End Select
- End Sub
Keywords: Visual Basic 6, VB 6, VB.net, VB 2005, Textbox, Eingabe, Nur Zahlen, Asc, Key Press, Key Down, KeyAscii, KeyChar
Gruß, Agent Smith
activeFlags = (lazy OR weary)
Lemgo-Verschwörung | Mathematics | VB-Paradise in blau
activeFlags = (lazy OR weary)
Lemgo-Verschwörung | Mathematics | VB-Paradise in blau
Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „Agent“ ()