JLabel actionlistener,用什么?自动更新标签

JLabel actionlistener, what to use? Automatic update labels

当我的 GUI 为 运行 时,我正在尝试更新我的 JLabel 对象。 创建了 3 个包含文本和一些变量的标签。当程序为 运行.

时,这些变量会自动更新

我想制作一个 ActionListener 就像您可以为按钮制作的那样,但不需要单击来更新标签。我希望它每 1 秒自动更新一次。

我标签的一些代码:

powermessage = new JLabel("<html> Usage: " + kWh + " kWh <br> <br>" + message + "</html>");

以前用过这个方法(见下)。

button.addActionListener(this);

这工作正常,但我不希望用户点击更新显示器。

有人知道一个简单的解决方案吗?

我会这样尝试:

Timer myTimer = new Timer(1000, new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
    powermessage.setText("myvaluegoeshere");
    }
});
myTimer.start();

创建计时器并从内部更新 JLabel.text 属性:

import java.util.Timer;
import java.util.TimerTask;

Timer timer = new Timer();
timer.schedule(new TimerTask() {

    @Override
    public void run() {
        // update your labels here
    }
}, 1000,1000);