在图像中,我创建了一个名为" filter"的按钮。根据当前状态筛选出特定数据集。我使用SwingWorker从数据库中检索数据。我现在的代码工作正常。一旦我点击按钮,它就会显示相关数据。但是当我再次以不同的状态点击它时,它不会显示所需的数据。我正在读取,doBackground方法只会被执行一次。有没有办法再把它关掉.. ??
答案 0 :(得分:4)
您不能重新启动SwingWorker,而且您不想这样做。根据{{3}}:
SwingWorker只能执行一次。多次执行SwingWorker不会导致两次调用doInBackground方法。
您的解决方案是在按钮的ActionListener中创建一个新的SwingWorker实例并执行它;做到这一点,你可能会没事的。