0

我已阅读此声明,即“在 EDT 上显示 GUI”。谁能解释一下这个语句,我知道事件侦听器是在 EDT 上执行的,但是如何在 EDT 上显示 GUI。

4

2 回答 2

2

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

于 2013-07-23T13:50:59.990 回答
0

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

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

于 2013-07-23T13:52:17.160 回答