[RESOLVIDO] Realizar soma dos campos

Gostaria de saber o que devo pensar ao programar um Jbutton no Ecplise. Sou iniciante, gostaria de obter a média de uns valores como resultado.

Como configurar o botão abaixo (Faturamento Anual Médio) para que ele tire a média dos valores dos faturamentos obtidos.

Capturar

Você tem que programar esse botão. A dica é:

Coloque um listener nele, pegue os valores dos campos e aí é só matemática.

2 curtidas

Você já entende algo de programação? Ou vai começar HOJE a entrar nesse mundo? Se já entender, usando só o exemplo dos textos, você precisa pegar os 5, .getText();. E como o Curiosity mencionou, é só matemática.

2 curtidas

Eu entendo mais ou menos, comecei a ver programação este semestre. Ultima coisa que vi foi .get.Text e .setText sendo que não entendi muito bem o funcionamento do código .setText

Lembre-se também de converter o valor String para int ou double dependendo da sua necessidade.
Pensa também em como obrigar “a digitar somente números”.

1 curtida

Caso queira, posta o projeto aqui.

1 curtida

Vou tentar usar essas dicas e posto aqui o resultado

1 curtida

O que eu fiz foi isto, o que está errado?
O programa diz que que não pode converter text01 text2 … em String

JButton btnNewButton = new JButton(“Faturamento Anual M\u00E9dio”);
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {

			String textm = text01.getText() + text2.getText() + text3.getText() + text4.getText() + text5.getText();
			
			if (text01.getText() != "") {
				textm = text01;
				System.out.println(textm);
				
			}if (text2.getText() != "") {
				textm = (text01 + text2)/2;
				System.out.println(textm);
				
			}if (text3.getText() != "") {
				textm = (text01 + text2 + text3)/3;
				System.out.println(textm);
				
			}if (text4.getText() != "") {
				textm = (text01 + text2 + text3 + text4)/4;
				System.out.println(textm);
				
			}if (text5.getText() != "") {
				textm = (text01 + text2 + text3 + text4 + text5)/5;
				System.out.println(textm);
			}
				
		}
	});

Atualizando o código:

JButton btnNewButton = new JButton(“Faturamento Anual M\u00E9dio”);
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {

			String textm = text01.getText() + text2.getText() + text3.getText() + text4.getText() + text5.getText();
			
			if (text01.getText() != "") {
				textm = text01.getText();
				System.out.println(textm);
				
			}if (text2.getText() != "") {
				textm = text01.getText() + text2.getText();
				System.out.println(textm);
				
			}if (text3.getText() != "") {
				textm = (text01.getText() + text2.getText() + text3.getText());
				System.out.println(textm);
				
			}if (text4.getText() != "") {
				textm = (text01.getText() + text2.getText() + text3.getText() + text4.getText());
				System.out.println(textm);
				
			}if (text5.getText() != "") {
				textm = (text01.getText() + text2.getText() + text3.getText() + text4.getText() + text5.getText());
				System.out.println(textm);
			}
				
		}
	});
1 curtida

O que eu preciso colocar para jogar esse valores na caixa de texto do “Faturamento Anual Médio” ?

System.out.println(); não funciona neste caso

campoFaturamentoAnual.setText(textm);

Esclarecendo suas dúvidas sobre o .setText e .getText:

O .setText, como o próprio nome já faz a menção, serve pra você setar algo lá dentro. Resumindo, para escrever dentro do campo, label, etc…

o .getText serve pra você recuperar o texto que está dentro de X campo.

1 curtida

o campo de faturamento anual é chamado textm.

então ficou textm.setText(textm);

mas o seguinte ocorre:
“O método .setText está indefinido para o tipo String”

É que nesse caso não vai fazer a soma, vai só pegar todos os textos e juntar em um campo só, textm é uma String.

Troca o nome dessa String, aí vc faz o textm.setText(novaString);


Pra você fazer a soma, seria ideal você trocar essa String por double. Aí ficaria:

double soma = Double.parseDouble(text01.getText()) + "os outros campos";
textm.setText(String.valueOf(soma));

Double = É um tipo numérico que contém casas decimais (Exemplo: 17.520) onde a representação das casas decimais é maior do que a de um tipo numérico de ponto flutuante (float).

Esse Double.parseDouble = converte (Nesse caso) uma String para Double.
E o String.valueOf = converte (Nesse caso) um Double para String.

1 curtida

Valeeeu, @rodriguesabner!
Você não sabe o quanto me ajudou

1 curtida