单击Java Applet后,JButton"保持按下"状态

Jer*_*rry 3 java swing multithreading jbutton

我的Java Applet中有一个JButton.按下它之后,ActionListener必须执行大量操作.因此,正因为如此,当用户点击按钮时,它会"保持按下"一段时间(有时甚至是5分钟),而不是立即禁用它(它在这5个小时后自动禁用).

public void actionPerformed(ActionEvent e) {
  JButton.setEnabled(false);
  //...
}
Run Code Online (Sandbox Code Playgroud)

我不希望用户看到它.我希望所有这些动作都在后台执行.我能做些什么来实现它?

mdr*_*drg 8

您应该在另一个线程中执行此类密集型任务,而不是调度程序线程.

一些有用的阅读:工作者线程和SwingWorker