Ir ao conteúdo
  • Cadastre-se

Duvida em GUI


PedroLimaAraujo

Posts recomendados

Gente, estou começando a trabalhar com interface gráfica em Java, e estou fazendo um programa para somar dois números informados pelo usuario, mas está dando erro, me ajudem

Aqui está o código:




package aplicativo8;
import java.awt.*;
import java.awt.event.*;
import java.text.DecimalFormat;
import javax.swing.*;

public class Aplicativo8 extends JFrame {

public static void main(String[] args) {

JLabel lbNumero1 = new JLabel("Número 1:");
JLabel lbNumero2 = new JLabel("Número 2:");
JTextField informar1 = new JTextField(" ", 33);
JTextField informar2 = new JTextField(" ", 33);
JButton btCalcular = new JButton("Somar!");
informar1.setBounds(60, 0, 60, 20);
informar2.setBounds(60, 23, 60, 20);
lbNumero2.setBounds(0, 20, 60, 20);
btCalcular.setBounds(9, 47, 90, 20);
JFrame Aplicativo8 = new JFrame("Aplicativo 8");
Aplicativo8.setLayout(null);
Aplicativo8.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Aplicativo8.setSize(300, 150);
lbNumero1.setBounds(0, 0, 60, 20);
Aplicativo8.add(lbNumero1);
Aplicativo8.add(informar1);
Aplicativo8.add(lbNumero2);
Aplicativo8.add(informar2);
Aplicativo8.add(btCalcular);
btCalcular.setMnemonic(KeyEvent.VK_C);
final float x = Float.parseFloat(informar1.getText());
final float y = Float.parseFloat(informar2.getText());
btCalcular.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "Valor 1: " + x + "Valor 2: " + y + "Resultado: " + x + y);
}
});
Aplicativo8.setVisible(true);
}
}

Me ajudem pf

Link para o comentário
Compartilhar em outros sites

  • Moderador

seu problema esta aqui neste bloco:


btCalcular.setMnemonic(KeyEvent.VK_C);
final float x = Float.parseFloat(informar1.getText());
final float y = Float.parseFloat(informar2.getText());
btCalcular.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "Valor 1: " + x + "Valor 2: " + y + "Resultado: " + x + y);
}
});

eu reescrevi o codigo, deixando desta maneira que funciona:


package aplicativo8;

import java.awt.event.*;
import javax.swing.*;

public class Aplicativo8 extends JFrame {

public static void main(String[] args) {

JLabel lbNumero1 = new JLabel("Número 1:");
JLabel lbNumero2 = new JLabel("Número 2:");

final JTextField informar1 = new JTextField(" ", 33);
final JTextField informar2 = new JTextField(" ", 33);

JButton btCalcular = new JButton("Somar!");

informar1.setBounds(60, 0, 60, 20);
informar2.setBounds(60, 23, 60, 20);
lbNumero2.setBounds(0, 20, 60, 20);
btCalcular.setBounds(9, 47, 90, 20);

JFrame Aplicativo8 = new JFrame("Aplicativo 8");

Aplicativo8.setLayout(null);
Aplicativo8.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

Aplicativo8.setSize(300, 150);
lbNumero1.setBounds(0, 0, 60, 20);

Aplicativo8.add(lbNumero1);
Aplicativo8.add(informar1);
Aplicativo8.add(lbNumero2);
Aplicativo8.add(informar2);
Aplicativo8.add(btCalcular);
btCalcular.setMnemonic(KeyEvent.VK_C);


btCalcular.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btCalcularActionPerformed(evt);
}

private void btCalcularActionPerformed(ActionEvent evt) {
float numero1 = Float.parseFloat(informar1.getText());
float numero2 = Float.parseFloat(informar2.getText());

float soma = numero1 + numero2;

JOptionPane.showMessageDialog(null,"A soma dos valores é: " +soma);
}
});

Aplicativo8.setVisible(true);
}
}

perceba que a unica coisa que fiz foi adicionar o metodo addActionListener ao btCalcular e chamar dentro dele o metodo btCalcularActionPerformed

e é nesse método btCalcularActionPerfomed() que você tem que converter de String para float e fazer a soma.. e apresentar a resposta num JOption

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!