我读过这样的声明:"GUI显示在EDT上“。请任何人解释一下这句话,我知道事件侦听器是在EDT上执行的,但是如何在EDT上显示GUI。
发布于 2013-07-23 13:50:59
“图形用户界面显示在EDT上”的说法是不精确和误导的。实际上,对GUI对象的所有操作,包括它们的实例化,都必须发生在EDT上。由此可以看出,导致GUI元素在屏幕上显示的所有操作也都发生在EDT上。
发布于 2013-07-23 13:52:17
EDT负责所有的事情。它接受任何事件(鼠标/键盘单击等),然后根据事件调用任何操作。如果您希望在UI上执行任何操作(从代码中显示按钮等),EDT将再次负责在屏幕上显示它。
理想情况下,所有的按钮初始化(UI、操作等)都应该由EDT来完成,尽管这不是强制性的(在android中是这样的)。文档中说,不执行冗长的任务是为了:正如前面提到的,因为EDT处理所有事情,如果EDT忙于冗长的任务,那么任何鼠标单击等都不能由EDT在UI体验中创建挂起处理。
https://stackoverflow.com/questions/17811557
复制相似问题