Valor de jtext "zerado" no jbutton

2 respostas
A

Ola pessoal
Iniciante em java e estou com um probleminha. Tenho este método que pega os valore dos jtext's que tenho:

public void PegaValores(){
Float parede1 = Float.parseFloat(textField_Parede1.getText().trim());
Float parede2 = Float.parseFloat(textField_Parede2.getText().trim());
Float altura = Float.parseFloat(textField_Altura.getText().trim());
String sinistro = textField_Sinistro.getText().trim();
}

No jbutton eu chamo o PegaMetodo(); e qualquer operação q tento executar ou valor q tento mostrar retorna “0” Creio que seja algum erro simples e de iniciante, mas por ser eu iniciante tbm, eu estou travado nele. Se alguém puder dar uma ajudinha…

2 Respostas

Chaybelucas

Tipo …
Por que tá chamando o PegaMetodo(); e não o PegaValores(); ?

Verifica se antes de acontecer a ação do botão, você não está zerando algum valor ou se está retornando a variável correta. O ideal seria você mostrar essa sua classe ou dar um exemplo melhor.

A

@Chaybelucas olha só como estou fazendo…
Alias o PegaMetodos(); foi apenas confusão na digitação mesmo.

//*** PEGANDO VALORO DA VARIÁVEL PAREDE1
	textField_Parede1 = new JTextField();
	textField_Parede1.addActionListener(new ActionListener() {
		public void actionPerformed(ActionEvent e) {
			float parede1 = Float.parseFloat(textField_Parede1.getText().trim());
		}
	});
Depois eu tirei o meto do action listener dos jtext e coloquei todos no metodo PegaValores(); como mostrei. Agora os metodos que estou chamando no action do botão

}	

public void PegaValores(){

Float parede1 = Float.parseFloat(textField_Parede1.getText().trim());

Float parede2 = Float.parseFloat(textField_Parede2.getText().trim());

Float altura = Float.parseFloat(textField_Altura.getText().trim());

String sinistro = textField_Sinistro.getText().trim();
}

public float CalcParedes (){
	
	PegaValores();
	if(textField_ParedesAvls.getText().equals("")){
	calcParedes = (parede1+parede2*altura);
	}else{
		calcParedes = paredesAvls;
	}
	System.out.println(parede1);
	return calcParedes;
}
public float CalcTeto(){
	calcTeto = (parede1*parede2);
	System.out.println(calcTeto);
	return calcTeto;
}
e o action do botão

JButton btnCalcular = new JButton(Calcular);

btnCalcular.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

PegaValores();

CalcParedes();

System.out.println(parede1);

}

});

o system.out.print está apenas para testar se estava mostrando o valor dos jtexts

Postei apenas essas partes devido o codigo ser muito grande

Acho que não tem nada zerando, pelo menos eu acho  o que poderia estar errado ?

Obrigado !!!
Criado 26 de fevereiro de 2017
Ultima resposta 27 de fev. de 2017
Respostas 2
Participantes 2