SwingWorker更改主gui类中的按钮

时间:2014-10-27 17:12:39

标签: java class swingworker

我有一个带有按钮和其他控件的主GUI类。 当其中一个按钮(比如说btnGo)被选中时,它被禁用,并且启动SwingWorker(当前是不同类的一部分)来做某事。

我的愿望是在SwingWorker完成时再次启用该按钮。

如何让我的孩子上课" (因为缺少一个更好的词)更新我的主GUI类中的控件?

1 个答案:

答案 0 :(得分:1)

将对该按钮的引用传递给SwingWorker子类的构造函数。然后,在.done()方法中,您可以重新启用它。

.done()方法在GUI线程上运行,因此可以安全地更改按钮状态。

另一种方法是将按钮注册为PropertyChangeListener的{​​{1}},以便在工作完成时得到通知。