JavaFX:EventHandler 和 EventFilter 有什么区别?
我已经在谷歌上搜索了一段时间,我发现基本上,一些网页说没有太大的差异。除了一些要点:
-
EventFilter
在之前执行EventHandler
-
EventFilter
不明智的让我看看我是否理解了它:假设我有:event.Consume();
Button b= new Button("Test"); b.addEventHandler(.....){...}; b.addEventFilter(......){...};
假设它们都“链接”到一个 ;那么,的代码将是第一个被执行的!?MouseEvent.MOUSE_CLICKED
EventFilter
比方说,现在,我有:
Button b= new Button("Test");
b.addEventHandler(.....);
b.addEventFilter(......){
//some code
event.consume();
}; // First filter
b.addEventFilter(......){
//some other code
event.consume();
}; // Second filter
在这种情况下,船将被执行,但不会。对吧?EventFilter
EventHandler
还有其他事情要知道吗?有没有我应该选择一个或另一个的情况?我有时应该一起使用它们来解决一些问题吗?
谢谢!