JTextField tamanho e máscara

Procurando aqui no fórum encontrei parcialmente a solução de um problema, com este código a máscara e o limite de um JTextField são setados:

try{

       	javax.swing.text.MaskFormatter format_textField = new javax.swing.text.MaskFormatter("**********");
       	
       	format_textField.setValidCharacters
       	       ("AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz");

       	nome = new avax.swing.JFormattedTextField(format_textField);
       		       	
       	}catch (Exception e){}

Funciona muito bem, não é possível digitar caracteres que não sejam os permitidos e mais do que 10… O problema é que o tamanho do JTextField sempre fica como 8… Tem como eu usar esse código e também indicar o tamanho da caixa de texto?

Olá grajagan,

seja bem-vindo ao PJ.

Tente fazer o seguinte:

  format_textField.setValidCharacters
("AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz"); 
 format_textField.setColumns( 20 ); // Vinte caracteres

Até mais,

Bons códigos!!!

Luís

Valeu pela saudação… Mas não foi possível usar este método… To usando o Eclipse e a única possibilidade é setCommitsOnValidEdit() não tem mais nada que comece com ‘setC’ …

Descobri meu erro… Eu não estava conseguindo usar o setColumns porque minha variável era JTextField, mudei pra JFormattedTextField e usei o setColumns… tudo ok agora!! Valeu pela ajuda luis :slight_smile:

Com este código tenho que colocar tantos asteriscos quantos forem necessários para limitar a quantidade de caracteres que permito na caixa de texo… Tem como eu, em vez de digitar asteriscos, informar a quantidade limite de caracteres por um inteiro? Assim como o tamanho do JTextField(20), por exemplo?

alguma dica?