Como tirar o espaço da primeira letra digitada no Jtextfild?

10 respostas
K

Oi pessoal,

Estou utilizando o codigo abaixo para entrada limitada em um JtextField

try{
			javax.swing.text.MaskFormatter format_textField = new javax.swing.text.MaskFormatter("***********");
			format_textField.setValidCharacters("AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789 ");
			pagarTextNomeConta = new javax.swing.JFormattedTextField(format_textField);
		}catch (Exception e){}

O problema que eu nao quero que o usuario digite a tecla “espaço” no primeiro campo, ele pode utilizar no segundo, terceiro e assim por diante.

Como resolvo isso?

10 Respostas

ViniGodoy

Troque o primeiro * da sua máscara por:
A, se puder letra ou número
? (se puder só letra).

se puder ser só um numero.

K

Puts um negocio tao simpes de resolver, dei mole dessa vez. Obrigado amigo.

Aproveitando o topico como eu posso fazer para quando eu digitar 2 numeros o jtext auto acrescentar uma “/” por exemplo ou um “.”. Isso é bom para campos em Jtext que eu coloque data ou telefone ou cpf.

Agradeco a ajuda.

Alexandre_Saudate

Kaiser:
Puts um negocio tao simpes de resolver, dei mole dessa vez. Obrigado amigo.

Aproveitando o topico como eu posso fazer para quando eu digitar 2 numeros o jtext auto acrescentar uma “/” por exemplo ou um “.”. Isso é bom para campos em Jtext que eu coloque data ou telefone ou cpf.

Agradeco a ajuda.

MaskFormatter mask = new MaskFormatter("##.###.###-##");
JFormattedTextField format = new JFormattedTextField(mask);
K

Era isso mesmo que eu tava querendo.

Vlw amigo.

Abrs

K

Oi galera.

Agora me surgiu outra duvida quando testei.
Se eu quero delimitar por exemplo 40 espaços, ate ai tudo bem, se eu chegar no final dos 40 e apertar TAB ele muda o campo normalmente, mas se eu apertar TAB por exemplo no 20 ele muda de campo deixando o anterior em branco.

altitdb

Vai nas propriedades dele e muda de COMMIT_OR_REVERT para COMMIT.

ou

jFormattedTextField.setFocusLostBehavior(javax.swing.JFormattedTextField.COMMIT);
K

Fiz assim,

try{
			javax.swing.text.MaskFormatter format_textField = new javax.swing.text.MaskFormatter("??????????");
			format_textField.setValidCharacters("AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz");
			usuarioAdicionarTextNome = new javax.swing.JFormattedTextField(format_textField);
			((JFormattedTextField) usuarioAdicionarTextNome).setFocusLostBehavior(javax.swing.JFormattedTextField.COMMIT);  
		}catch (Exception e){}

Teoricamente funcionou, ele pula de um jtextfield pra outro, mas quando clico no botao salvar ele salva no banco de dados, quando puxo os dados do banco ele volta errado, pois nao consegue completar os espaços no jtextfield que é limitado em 10, ou seja creio que a mudança com o TAB aumente a quantidade de caracteres provavelmente em branco.

Ex: o jtextfield tem 10 espaços se eu preencher 8 e apertar tab ele da mais de 10 e salvo, quando clico na tabela pra retornar os valores pros respectivos jtextfield ele nao volta os dados

altitdb

Cara pra tira os espaços do final e do começo da String faz assim…

seuftf.getText().trim();

Só usar o trim() que ele retira os espaços.

xD~~

K

Vlw altitdb, resolvido o problema.

era esse o problema mesmo dos espaços.

Vlw a ajuda

altitdb

ndz!!

precisando estamos ai!!

xD~~

Criado 30 de dezembro de 2009
Ultima resposta 30 de dez. de 2009
Respostas 10
Participantes 4