Fazer um Calculo em dois campos e mostrar o resultado no terceiro campo automaticamente
3 respostas
G
general_lee
Pessoal eu tenhu dois campos de texto no meu Jframe para fazer o calculo, e um terceiro para mostrar o resultado autimaticamente apos inserir os valores no campo 1 e 2, o noem dos campos é valor_uni e o margem_lucro e o preço_sugerido.
Calculo:
Valor_uni + Margem_lucro % (EM PORCENTAGEM %) = preço_sugerido!
Exemplo:
Na teoria o usuario iria informar o valor_uni = R$ 59,00 (VALOR UNITARIO) e depois informar o margem_lucro (MARGEM DE LUCRO EM PORCENTO) 70 (%) o resultado ia aparecer automaticamente no terceiro campo = R$ 100,30. sem ter botao nem nada para isso.
Alguem poderia medar um luz aqui :?: :?: :?: :?:
té +
vlw
Bem, você pode criar um objeto para tratar os eventos do teclado, de modo que sempre que o ENTER for pressionado no segundo TextField, o cálculo seja executado.
O meu exemplo faz isso. Veja:
packageExemplo1;importjava.awt.FlowLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.KeyAdapter;importjava.awt.event.KeyEvent;importjava.awt.event.KeyListener;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JTextField;publicclassExemploFrameextendsJFrame{JTextFieldvalor1;JTextFieldvalor2;JTextFieldresultado;intvalorResultado;publicExemploFrame(){super("Exemplo");this.setSize(500,100);this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);this.setLayout(newFlowLayout());this.add(newJLabel("valor 1: "));this.add(valor1=newJTextField(5));this.add(newJLabel("valor 2: "));this.add(valor2=newJTextField(5));this.add(newJLabel("resultado da soma: "));this.add(resultado=newJTextField(5));resultado.setEditable(false);//criando uma classe interna anônima para tratar os eventos do tecladovalor2.addKeyListener(newKeyAdapter(){@OverridepublicvoidkeyPressed(KeyEvente){if(e.getKeyCode()==10){valorResultado=Integer.parseInt(valor1.getText())+Integer.parseInt(valor2.getText());resultado.setText(String.format("%d",valorResultado));}}});}}
Espero ter ajudado!
Abraço
R
rogelgarcia
Você sabe como pegar o valor de um campo?
E colocar o valor em um campo?
Sabe em que situação quer que ocorra a soma? Quando o usuario digitar qualquer numero? Quando o usuario tirar o foco do input?
Conheçe sobre tratamento de eventos do input?
Sabe como fazer conversoes de String para Integer ou Double, e vice versa?
G
general_lee
Valeu pelas respostas ja consegui resolver o problema…