Olá …
To iniciando no Java … minha pergunta ja deve ter sido feita por aqui, mas nao achei … Seguinte …
Tenho um Text Field1 e quando eu digitar algo nele, vou passar o valor para uma classe que vai formatar o valor para R$ 1,000.00 por exemplo, e assim que passar para outro Text Field2 da mesma tela de cadastro o Tex field1 vai fazer o q falei e vai atualizar o valor automaticamente e vai ficar com aquele valor atualizado, assim antes de confirmar o cadastro o Text Field1 vai estar lah com o valor certinho. entenderam ?? isso é comum em Delphi e VB por exemplo, quando se sai do campo, isso acontece ao sair do Text Field, ao perder o Foco.
Obrigado.
Bom, para formatar o valor, vc precisará de um MaskFormatter:
http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/text/MaskFormatter.html
para fazer um segundo textField depender de um primeiro(e vice-versa), é só agendar uma thread e ir fazendo uma atualização(via DocumentListener),algo do tipo:
textField1.getDocument().addDocumentListener(
new DocumentListener(){
String s;
public void insertUpdate(DocumentEvent e){
if(textField1.getText()!=null){
new Thread( new Runnable() {
public void run() {
atualizarTextField2(textField1.getText());
}
} ).start();
}
else
textField1.setText("0.00");//coloca um valor padrão
}
public void removeUpdate(DocumentEvent e){
s = textField1.getText();
if(s.length() < 1)
textField1.setText("0.00");
}
public void changedUpdate(DocumentEvent e){}
});
Faça o mesmo para o segundo se for para haver uma dependencia entre ambos.Se a única função for preencher a segundo textfield após o primeiro, pode só usar um actionListener da vida passando dentro do método actionPerformed o jtextField1.getText() da vida.
Huumm … estou no trabalho agora, mas assim q chegar em casa vou tentar … eu achei bastante coisa sobre isso mas nao consegui fazer, nao é muito didatico … assim q eu fizer eu respondo se deu ou nao … tem muito topico aqui q as pessoas nao respondem se conseguiram ou nao …
Valeuu …
Consegui o q eu queria usando focusLost …
Valeu.