如何在actionPerformed()中更新JFrame?

时间:2012-12-12 16:36:02

标签: java swing user-interface

我在按钮上添加了一个动作监听器:

myButton.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e)
    {
        myButtonAction();
    }
});

该按钮将启动阻止/短暂呼叫。我想在发生调用之前更新JFrame(某些组件) - 以通知用户。但是,JFrame似乎没有一个paintImmediate。我该怎么做?

目前,在 myButton.setEnabled(false)完成之后,任何更改(包括myButtonAction())都不会更新。

我真的应该为一切创建新线程(非ui相关)吗?这对我来说似乎是一个轻量级的任务。

1 个答案:

答案 0 :(得分:1)

是的,你应该在另一个线程上运行它。我不认为它首先是“轻量级”。

如果需要,您可以重复使用线索,请参阅SwingWorkerThreadPoolExecutor