如何用数字更新JLabels



好吧,我有两个文本字段,你可以在其中键入两个数字,然后在这两个文本域下面是一个名为result的标签,一旦它们加在一起,就会显示金额。窗口底部有一个要添加的按钮。我在更新结果标签时遇到了问题,下面只是我显示的添加按钮的操作监听器。从我的代码来看,一切都很好,我只需要知道如何更新我的结果标签,以显示两个数字的总和。这一切都在java中btw.

addButton.addActionListener( new ActionListener()
    {
        public void actionPerformed(ActionEvent e)
        {
            double sum = 0;
            double newNum1 = 0;
            double newNum2 = 0;

            String num1 = leftOperand.getText();
            String num2 = rightOperand.getText();

            if(!(num1.trim().equals("")) || !(num2.trim().equals("")))
            {
                newNum1 = Double.parseDouble(num1);
                newNum2 = Double.parseDouble(num2);
            }

            sum = newNum1 + newNum2;
            JLabel resultLabel = new JLabel("Result =");
            resultLabel.setText("Result = " + String.valueOf(sum));
        }
    });

这是我用来创建结果标签的代码。以防万一你需要看一下。

JPanel resultPanel = new JPanel();
JLabel resultLabel = new JLabel("Result =");
resultLabel.setName("resultLabel");
resultPanel.add(resultLabel);
frame.add(resultPanel, BorderLayout.LINE_START);

注意:这两种方法都是相同的。

首先,使resultLabel成为实例变量。。。

public class MyAwesomeClass extends ... {
    private JLabel resultLabel;

在构建UI时,请确保使用它,而不是创建本地变量

//JLabel resultLabel = new JLabel("Result =");
resultLabel = new JLabel("Result =");

计算结果时,使用实例变量

//JLabel resultLabel = new JLabel("Result =");
resultLabel.setText("Result = " + String.valueOf(sum));

回到基础知识,看看类和对象以及声明成员变量

最新更新