我正在开发一个涉及GUI的项目。在JFrame上,我有几个JButton在单击时执行特定操作。现在问题是,在我写的代码中,每次单击按钮时,它们都会生成一个新线程。我这样做是因为我知道如果一切都发生在同一个线程上,JFrame会冻结,但我觉得创建那么多线程效率不高。虽然程序现在功能很好,但我仍然希望从程序中删除多余的部分。应该将所有GUI内容放在“InvokeLater”中吗?但是GUI中也不是jButton吗?这些Button执行的一些操作需要一个现有的GUI,因此很难将它们分开......任何想法?这是一个按钮的例子。
JButton buttonA4= new JButton("Deact Crew");
buttonA4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
Thread hilo = new Thread(new Runnable()
{
public void run() {
DinnerList.deactivateGroup(tempJobCrew.getCrews());
studentTable.repaint();
}
});
hilo.start();
}
});