Dúvida - Atualizar JTextField em tempo de execução
6 respostas
GuilhermeSilva
Olá pessoal…
Estou com uma dúvida em atualizar um JTextField em tempo de execução.
Ex. Eu tenho 3 JTextField’s sendo:
txtValor1 = 1
txtValor2 = 1
txtResultadoSoma = txtValor1 + txtValor2 (que no caso é = 2)
O detalhe está no tempo de execução, ou seja, quando o usuário abre o frame para inserir os valores, no ato de ele informar o primeiro valor, automaticamente o txtResultadoSoma já vai atualizando, e assim sucessivamente.
Parece pra muitos tolice essa pergunta, mas como todos nós aqui no forum e em qualquer lugar nunca aprendemos sabendo tudo, vai ai minha duvida.
Gostaria de saber o que usar.
Desde já agradeço a colaboração de todos…
Abraço!!!
A classe JTextField possui o método setText(String args) que permite que o conteúdo seja alterado dinâmicamente.
Por exemplo, se eu disparo um evento e quero que o JTextField em questão tenha seu valor definido como GUJ
jTextField1.setText("GUJ");
Assim você consegue realizar o que precisa.
GuilhermeSilva
Olá drsmachado, mais uma vez vc me ajudando… heheheh (valeuu!)
Então, eu sei sim sobre essa propriedade setText(“tal coisa”), mas deixa eu te explicar melhor com o código que eu fiz:
conta.setValor1(Double.parseDouble(txtValor1.getText()));conta.setValor2(Double.parseDouble(txtValor2.getText()));Doublesoma=Double.parseDouble(txtValor1.getText())+Double.parseDouble(txtValor1.getText());txtResultadoSoma.setText(String.valueOF(soma)); // eu preciso que esse txtResultadoSoma seja atualizado automaticamente em tempo de execução. Na medida que o usuário for digitando o valor1 e valor2, ele já vá atualizando com a soma e mostrando na telaconta.setTotal(soma);
Desde já agradeço…
Guilherme
drsmachado
Para isso, você precisará implementar um método onCaretUpdate ou onKeyReleased, para reprocessar o cálculo a cada novo caractere digitado ou nova tecla pressionada e solta.
Dica, crie variáveis separadas para cada valor.
Evite coisas como
Hum… entendi!
Vou dar uma estudada nesses metodos que vc disse, e assim que eu conseguir implementar isso eu posto aqui pra deixar pra outros que possuem essa mesma duvida minha.
Com relação a essa dica que vc passou, eu não havia pensado nisso.
Particularmente eu acho que fica até melhor dessa maneira. (mais legivel também)
Mas eu agradeço seu apoio drsmachado
Mais uma vez obrigado…
Guilherme
drsmachado
GuilhermeSilva:
Hum… entendi!
Vou dar uma estudada nesses metodos que vc disse, e assim que eu conseguir implementar isso eu posto aqui pra deixar pra outros que possuem essa mesma duvida minha.
Com relação a essa dica que vc passou, eu não havia pensado nisso.
Particularmente eu acho que fica até melhor dessa maneira. (mais legivel também)
Mas eu agradeço seu apoio drsmachado
Mais uma vez obrigado…
Guilherme
A idéia dos métodos onCaretUpdate e onKeyReleased é a mesma do actionListener. Você vai precisar implementar um CaretUpdateListener ou um KeyListener, que são interfaces, semelhantes à ActionListener.
Pense que não estamos mais contando os bits de memória para programas, dispomos de boas quantidades, por isso, declarar mais variáveis ou menos, não vai afetar muito a performance, neste escopo.
GuilhermeSilva
Olá drsmachado
Cara, não consegui nada especifico sobre isso, ou pelo menos não entendi muito bem o que proporam em outros tópicos.
Gostaria de saber por onde começar…
Se puder ajudar eu agradeço!