Eu queria saber se alguém tem alguma forma diferente, mais otimizada para limitar o tamanho de um JTextField e limitar também quanto aos dados aceitos (menos o uso de mascaras, porque elas as vezes causam umas complicações).
Aqui está meu codigo:
public class TratamentoLetras extends KeyAdapter {
int quantidade;
public TratamentoLetras(int quant) {
quantidade = quant;
}
public void keyTyped(KeyEvent e) {
JTextField tf = (JTextField) e.getSource();
InputMap map = tf.getInputMap();
map.put(KeyStroke.getKeyStroke('V', InputEvent.CTRL_DOWN_MASK), "beep");
map.put(KeyStroke.getKeyStroke('C', InputEvent.CTRL_DOWN_MASK), "beep");
if (!Character.isLetter(e.getKeyChar())
|| tf.getText().length() >= quantidade) {
e.consume();
}
}
}
O para somente números ta quase a mesma coisa, mas substituindo Letter pr Digit.
Eu também fiz uma parte pra não aceitar Ctrl+v ou Ctrl+v mais ele tem um defeitozinho la…se alguém tiver uma alternativa…
agradeço desde ja!