Duvida urgente - JTextField

Fala Galera,

Estou com um problema, preciso de um campo que:
1 - nao tenha tamanho fixo nem mascara
2 - permita apenas letras e espaços
3 - nao permita acentuacao e qualquer outro caractere

É por exemplo um campo nomeCliente, mas nao pode ter acento
Tentei usar mascara com o JFormattedTextField mas nao ficou legal, a mascara atrapalha ja que ela tem tamanho fixo, entao teria que ser com o JTextField mesmo
Ate agora consegui fazer tudo, o problema eh que o codigo abaixo permite acentos, como ç, á, é, outros…

[code]JTextField nome = new JTextField();

nome.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
char c = e.getKeyChar();
if (!(Character.isLetter© ||
(c == KeyEvent.VK_BACK_SPACE) ||
(c == KeyEvent.VK_SPACE))) {
e.consume();
}
}[/code]

Neste exemplo apenas Letras sao permitidas, alem das teclas backspace e a barra de espaço.
O problema eh que ele permite letras acentuadas, e eu não posso permitir, alguem sabe uma saida?

Valeu

[quote=thiagot]Fala Galera,

Estou com um problema, preciso de um campo que:
1 - nao tenha tamanho fixo nem mascara
2 - permita apenas letras e espaços
3 - nao permita acentuacao e qualquer outro caractere

É por exemplo um campo nomeCliente, mas nao pode ter acento
Tentei usar mascara com o JFormattedTextField mas nao ficou legal, a mascara atrapalha ja que ela tem tamanho fixo, entao teria que ser com o JTextField mesmo
Ate agora consegui fazer tudo, o problema eh que o codigo abaixo permite acentos, como ç, á, é, outros…

[code]JTextField nome = new JTextField();

nome.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
char c = e.getKeyChar();
if (!(Character.isLetter© ||
(c == KeyEvent.VK_BACK_SPACE) ||
(c == KeyEvent.VK_SPACE))) {
e.consume();
}
}[/code]

Neste exemplo apenas Letras sao permitidas, alem das teclas backspace e a barra de espaço.
O problema eh que ele permite letras acentuadas, e eu não posso permitir, alguem sabe uma saida?

Valeu

[/quote]

Você está no caminho certo. Em vez de Character.isLetter© (que pega a letra “á” por exemplo), use:

('A' <= c && c <= 'Z' || 'a' <= c && c <= 'z')

É meio brutal mas deveria funcionar.

Brigadao thingol, era tudo o que eu precisava, resolveu 100% meu problema!

Abraço

seria alguma coisa como:
http://www.guj.com.br/posts/list/32409.java