GWT中逻辑事件和本机事件之间有什么区别?

时间:2010-11-04 02:58:31

标签: events browser gwt event-handling

我注意到有两种方法可以将事件处理程序连接到GWT小部件:addHandler和addDomHandler。 addDomHandler的JavaDoc说:“向窗口小部件添加本机事件处理程序并接收相应的本机事件。如果您不想接收本机事件,请改用通用的addHandler方法。”

如果有人能够了解原生事件和逻辑事件之间的区别,我将非常感激。

1 个答案:

答案 0 :(得分:8)

本机事件由浏览器直接触发 - 诸如点击,鼠标悬停,按键等事件。要在Widget上接收这些事件,您必须专门接收事件。

通用事件更通用。例如,我为自己使用创建了SaveEventDeleteEvent,在满足某些UI条件时会被触发。它们离浏览器更远,永远不会被浏览器直接解雇。我认为你应该坚持使用更通用的事件。另一方面,如果您正在创建一个无法用其他小部件制作的自定义小部件 - 例如,如果您想构建一个用户可以单击并拖动的滑块 - 您将需要DOM事件。