图形用户界面显示在EDT上



我读过"GUI显示在EDT上"这句话。有人能解释一下这句话吗?我知道事件监听器是在EDT上执行的,但GUI是如何在EDT中显示的。

"GUI显示在EDT上"这句话不精确且具有误导性。实际情况是,GUI对象上的所有操作,包括它们的实例化,都必须在EDT上进行。由此可知,导致GUI元素显示在屏幕上的所有操作也发生在EDT上。

EDT负责一切。它接受任何事件(鼠标/键盘点击等),然后根据事件调用任何操作。如果您想在UI上做任何事情(显示代码中的按钮等),EDT将再次负责在屏幕上显示它。

理想情况下,所有的按钮初始化(UI操作等)都应该由EDT完成,尽管这不是强制性的(在android中是强制性的)。该文档说,不执行冗长的任务是为了:如前所述,因为EDT处理一切,如果EDT忙于冗长的任务,则EDT无法处理任何鼠标点击等,从而在UI体验中创建挂起

最新更新