【问题标题】:JavaFX: How to manage the focus traversal in a borderpaneJavaFX:如何管理边框中的焦点遍历
【发布时间】:2014-10-04 23:02:10
【问题描述】:

我想知道是否可以使用 TAB 或 Shift+TAB 在 Borderpane 元素的不同部分中导航?

【问题讨论】:

  • parts of BorderPane 是什么意思?
  • 抱歉,我想说的是 BorderPane 的子项(上、左、中、右和下)。
  • 好吧,您可以在同一Layout 中的Controls 之间切换。如果您在Borderpane 的中心有一个gridpane,它有4 个文本字段和一个按钮,您可以使用TAB 在它们之间切换Focus

标签: java javafx focus keyboard-navigation


【解决方案1】:

您可以尝试以下方法:

borderPane.getTop().addEventFilter(KeyEvent.KEY_PRESSED, new EventHandler<KeyEvent>() {
    @Override
    public void handle(javafx.scene.input.KeyEvent event) {
        if (event.getCode() == KeyCode.TAB) {
            borderPane.getLeft().requestFocus();
        }
    }
});

【讨论】:

  • 谢谢!经过分析,BorderPane 正确管理了 TAB 和 SHIFT+TAB。但是,当以前的控件是 TabPane 时,我遇到了问题。无法将焦点移到 TabPane 之外的上一个可聚焦控件。我必须实施一种解决方法,将焦点移回上一个控件。
  • 在 TabPane 内移动焦点已使用 8u20 版本正确处理。
猜你喜欢
  • 2013-02-20
  • 2013-06-29
  • 1970-01-01
  • 1970-01-01
  • 2013-03-01
  • 1970-01-01
  • 2012-06-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多