1

我是 Java GUI 的新手。所以说如果我有一个按钮并且没有我提供的事件处理程序,那么谁来处理那个事件?它与事件调度程序线程事件处理程序有关吗?尽管我有处理程序,但还请解释事件侦听器的作用是什么?事件处理和异常处理的工作方式相同吗?感谢和问候

4

2 回答 2

2

Nobdy会听到的。Java Swing(和其他 GUI 库)中的事件机制类似于侦听器(发布/订阅)模式。如果没有注册监听器,则没有人会处理该事件。

看看这个: http: //www.programcreek.com/2009/01/the-steps-involved-in-building-a-swing-gui-application/。一般而言:发布者(例如 JButton)发布许多事件:鼠标点击、悬停等。可以注册任意数量的订阅者(MouseAdapter,...)。每次发布特定类型的事件(例如 MouseEvent)时,正确的侦听器就会出现并执行它的操作。

发布者不知道注册了多少订阅者和哪些订阅者。通过这种方式,它们是松散耦合的

编辑:这也可能有帮助http://www.freejavaguide.com/java_swing.html

于 2013-07-18T08:12:34.020 回答
0

“我有一个按钮,但我没有提供事件处理程序,那么谁来处理该事件?”

答:没有人!!

有关事件侦听器和处理的详细信息,请参阅此处的文档。

此外,这篇SO 帖子将澄清你想要的一切!

于 2013-07-18T08:11:09.593 回答