GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
Questo topic è stato chiuso dal moderatore Ciao!
Come già suggerisce il titolo, vorrei sapere come far accettare a una textbox solo numeri, cioè che in quella textbox si possono digitare numeri e non lettere(se si prova a digitare una lettera nella textbox non deve comparire nulla), spero ke qualcuno di voi mi risponda...
|
|
Maffo23 (Ex-Member)
Pro
Messaggi: 63
Iscritto: 14/12/2006
|
be...esiste la funzione IsNumeric....
|
|
iGuLy (Ex-Member)
Pro
Messaggi: 66
Iscritto: 17/05/2007
|
Codice sorgente - presumibilmente Delphi |
If KeyAscii <> 8 Then If KeyAscii > 57 Or KeyAscii < 48 Then KeyAscii = 0 End If End If
|
Potresti mettere nell'evento KeyPress della TextBox
questo, che quando si premono tasti che non sono numerici elimina l'ultimo carattere.
Spero di essere stato di aiuto ciao
|
|
GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
Si, funziona, grazie
Perdona la mia ignoranza, ma mi diresti ke significa keyAscii??
|
|
gantonio (Normal User)
Guru^2
Messaggi: 1532
Iscritto: 09/09/2007
|
keyAscii e' un parametro passato dal sistema tramite l'evento KeyPress e rappresenta il valore ASCII del tasto pressato.
|
|
GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
Grazie x la spiegazione, xò è sorto un nuovo problema:
Con questo sistema è vero che la textbox accetta solo numeri, ma a me servirebbe che accettasse anche la virgola x i numeri decimali.
Ringrazio chiunque mi ha o tenti di aiutarmi.
|
|
gantonio (Normal User)
Guru^2
Messaggi: 1532
Iscritto: 09/09/2007
|
Beh ... prova da solo, altrimenti quando impari ...
Una dritta ... in questa linea, controlla anche il codice ascii della virgola
If KeyAscii > 57 Or KeyAscii < 48 Then
|
|
GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
Ho risolto, anche se la textbox mia accetta pure il punto e il - , però in fondo è meglio xkè il - lo posso utilizzare x i numeri negativi e il punto x separare le migliaia.
|
|
SuperTiz (Ex-Member)
Pro
Messaggi: 97
Iscritto: 25/05/2007
|
ciao GrG, probabilmente la mia risposta ti sarà inutile lol, però potresti usare questo semplicissimo codice :
Private Sub Text1_Change()
Dim Char As String
Char = Right(Text1.Text, 1)
If Char <> "1" And Char <> "2" And Char <> "3" And Char <> "4" And Char <> "5" And Char <> "6" And Char <> "7" And Char <> "8" And Char <> "9" And Char <> "0" And Char <> "," And Char <> "-" Then
Text1.Text = ""
End If
End Sub
in questo modo la tua textbox accetta tutti i numeri dallo 0 al 9, la virgola e il segno meno. puoi aggiungere qualsiasi carattere da "accettare" semplicemente aggiungendo "And Char <> "carattere da accettare" prima del "then"
cosi devi evitare di prevedere il codice ascii del carattere che vuoi accettare
spero che ti sia utile
ciaoo
edit : soltanto che se uno torna indietro col puntatore puo mettere tutti i caratteri che vuole lol
come non detto XDXD
Ultima modifica effettuata da SuperTiz il 18/09/2007 alle 20:28 |
|