Я искал время для поиска в Интернете, и я обнаружил, что в основном некоторые веб-страницы говорят, что нет больших различий. За исключением некоторых пунктов:
-
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 не будет. Правильно?
Есть ли еще какие-нибудь вещи? Есть ситуации, когда я должен предпочесть тот или иной? должен ли я иногда использовать их вместе для решения некоторых проблем?
Спасибо!