6

我目前正在查看 Oracle 网站上的 EventQueue 类:http: //download.oracle.com/javase/1.4.2/docs/api/java/awt/EventQueue.html 但我不确定什么时候应该用它?如果我的班级有两个或更多事件的听众,我应该使用它吗?

4

3 回答 3

6

通常你不必向 EventQueue 提交任何事件,当用户执行他的操作(如鼠标点击等)或系统认为你的窗口需要重新绘制时,这一切都会“自动”发生。

我经常使用的仅有的两种方法是EventQueue.invokeLaterEventQueue.invokeAndWait()(不太经常)。如果您在 EDT(事件调度线程)之外执行一些操作,然后想要对 GUI 进行一些更改(例如向容器添加或从容器中删除组件),请使用其中之一,因为此类操作应该只发生在美国东部时间。

于 2011-02-24T01:23:06.867 回答
6

我在 14 年的 Java 编程中从未使用过它。

于 2011-02-24T01:23:10.260 回答
1

AWT 使用这些来处理引擎盖下的 GUI 事务。通常,除非您在 AWT 之上构建一些 GUI 引擎,否则您不会使用它们。就像 Paulo 说的,有这个重要的方法invokeLater,但通常你可以使用这种方法达到相同的效果,SwingUtilities.invokeLater这种方法似乎被使用得更频繁。

于 2011-02-24T01:30:57.520 回答