我正在 JavaFx 上的选项卡 Pane 上工作,我的问题是我无法处理选项卡内的任何 KeyEvent,例如按下 F5 或键盘上的任何键,而且该函数正在处理选项卡内的任何元素像 TextField
一样,我的目标是处理选项卡而不是元素内的任何事件。
这是我测试过的代码
tab.getContent().addEventFilter(KeyEvent.KEY_PRESSED, new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent event) {
System.out.println("Filtering out event " + event.getCode());
event.consume();
}
});
最佳答案
据我了解another Stack Overflow post ,布局(在您的情况下为 TabPane)不响应 KeyEvents。因此,建议的解决方案也适用于该帖子,即将事件过滤器添加到场景中。如果您不喜欢这样做,请将 TabPane 设置为可聚焦,然后重试您的方式。
关于JavaFx : Event Filter on Tab (Tab Pane),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32249148/