Ich bin ein Neuling zu Java, ich möchte nur einen einfachen JFrame machen, der zwei Zahlen als Eingabe über JtextFields nimmt, summiere sie und gebe die Antwort über JLabel zurück ... aber es geht einfach nicht es, was es zu tun annehmen, hier ist mein Code:Zeige Summe durch JLabel
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ComponentEvent;
import java.awt.event.ComponentListener;
import java.util.*;
public class gUi extends JFrame {
private JLabel lbl;
private JLabel lbl2;
private JLabel lbl3;
private JTextField tb;
private JTextField tb1;
private int num1;
private int num2;
public gUi(){
super("Sum Dialog");
setLayout(new FlowLayout());
lbl = new JLabel("1st Number:");
add(lbl);
tb = new JTextField(15);
add(tb);
tb.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent event){
num1 = Integer.parseInt(tb.getText());
}
});
lbl2 = new JLabel("2nd Number");
add(lbl2);
tb1= new JTextField(15);
tb1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent event){
num2= Integer.parseInt(tb1.getText());
}
});
add(tb1);
int sum= num1+num2;
String ssum = Integer.toString(sum);
lbl3 = new JLabel();
lbl3.setText(ssum);
add(lbl3);
}
}
import java.awt.*;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
gUi g =new gUi();
g.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
g.setVisible(true);
g.setSize(180, 160);
}
}
es Compiliert in Ordnung, aber nicht Summe durch JLabel zeigt, wenn ich einige intergers setzen durch Textfelder ... ich für eine Woche, dieses Problem habe und versucht, verschiedene Dinge, die ich bisher kenne, aber das Problem besteht weiterhin ...
'int sum = num1 + num2;' Dieser Codecode wird "sofort" und nur einmal ausgeführt, und "num1" und "num2" sind immer noch "0". Die Summe muss sowohl in Ihrer actionPerformed-Methode als auch im Text der Summenbeschriftung neu berechnet werden. –
Hinweis: Informieren Sie sich über Java-Namenskonventionen. Klassennamen werden UpperCase; immer. Und vermeiden Sie "Abkürzungen" in Ihren Namen, selbst "AddingNumbersFrame" oder etwas ähnliches wäre aussagekräftiger als "gUI". – GhostCat