|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Feb 2004
Messaggi: 45
|
Tastiera....in Java
Salve gente,
avrei la necessità di disabilitare la tastiera per non poter scrivere in una TextField ma solo le lettere i numeri no. Conoscete qualche comando opportuno? Grazie...a tutti |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
non ho capito per disabilitare la tastiera cosa intendi.
se in un textfield vuoi scrivere solo lettere mi vengono in mente due modi: 1) aggiungi al textfield un listener (CaretListener, penso) e nel listener "cancelli" qualsiasi input non sia una lettera. non e' un modo molto elegante 2) estendi la classe JTextField overridando il metodo createDefaultModel(), facendogli ritornare una classe che estende Document e che rifiuta gli input che non vuoi. penso sia migliore del precedente. |
|
|
|
|
|
#3 | |
|
Member
Iscritto dal: Feb 2004
Messaggi: 45
|
Quote:
In pratica in una textField io voglio scrivere solo numeri e non lettere. Ciao e grazie ancora |
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Come ti è stato detto, aggiungi un KeyListener alla tua textBox, testi il tasto premuto, e se non ti va bene consumi l'evento...
Codice:
jTextField.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent k)
{
if (k.getKeyCode() .... )
.....
else
k.consume();
}
});
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Per testare facilmente se un carattere è una cifra puoi usare
Character.isDigit( carattere) |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
giusto, un KeyListener e non un CaretListener
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:17.



















