当前位置: 首页 > 面试题库 >

JavaFX TextArea中的Tab键导航

包和泰
2023-03-14
问题内容

如何在TextArea中单击Tab键导航到下一个控件?

我可以向cath de键按下事件添加一个侦听器,但是如何使TextArea控件失去焦点(不知道链中的下一个要聚焦的字段)?

@FXML protected void handleTabKeyTextArea(KeyEvent event) {
    if (event.getCode() == KeyCode.TAB) {
        ...
    }
}

问题答案:

如果按TAB键,则此代码遍历焦点;如果按CONTROL + TAB键,则插入标签。

textArea.addEventFilter(KeyEvent.KEY_PRESSED, new EventHandler<KeyEvent>() {
        @Override
        public void handle(KeyEvent event) {
            if (event.getCode() == KeyCode.TAB) {
                SkinBase skin = (SkinBase) textArea.getSkin();
                if (skin.getBehavior() instanceof TextAreaBehavior) {
                    TextAreaBehavior behavior = (TextAreaBehavior) skin.getBehavior();
                    if (event.isControlDown()) {
                        behavior.callAction("InsertTab");
                    } else {
                        behavior.callAction("TraverseNext");
                    }
                    event.consume();
                }

            }
        }
    });


 类似资料:
  • 问题内容: 我希望能够使用文本框中的键在四个空格之间切换。现在,Tab键将光标跳到下一个输入。 是否有一些JavaScript可以在气泡进入UI之前捕获文本框中的Tab键? 我了解某些浏览器(即FireFox)可能不允许这样做。像+ 或+ 这样的自定义按键组合怎么样? 问题答案: 即使捕获了/ 事件,这些也是tab键触发的唯一事件,您仍然需要某种方法来防止发生默认操作,即按tab键顺序移动到下一个

  • 问题内容: 在不使用焦点侦听技术的情况下,java gui中捕获Tab键的最简单方法是什么? 问题答案: VK_TAB 是制表符常量。 然而: 请参阅:http : //docs.oracle.com/javase/tutorial/uiswing/events/keylistener.html 要解决此问题,请将以下内容应用于触发关键事件的组件(例如,TextArea): 使用此方法,然后必须显

  • 概述 按下 Tab 键来执行补全操作。默认是启用的。 禁用 Tab 补全 把下面一行加入到Preferences/File Settings - User中: "tab_completion": false 插入常量 Tab 符 按下shift+tab插入一个常量 tab 符。 改变补全 有时候补全列表的文本并不是需要的,为了增加一个可选项,按下Ctrl + Space,这将使补全回退,并展示一

  • 问题内容: 我正在Java Swing中创建一个表单,其中一个字段是。当我在所有其他字段上使用键时,它将焦点移至下一个小部件,但在中,它将在文本中插入制表符(水平空格)。 如何修改此行为? 问题答案:

  • 问题内容: 我正在寻找一种创建表单的方法,按Enter键可使焦点移至页面上的“下一个”表单元素。我一直在网上找到的解决方案是… 不幸的是,这似乎仅在IE中有效。因此,这个问题的实质是,是否有人知道适用于FF和Chrome的解决方案?另外,我宁愿不必将 onkeydown 事件添加到表单元素本身,但是如果那是唯一的方法,则必须这样做。 编辑:另外,我已经看到人们提出了这样的问题,即这不是好样式,因为

  • Angular material在选择时出现问题。像materiel auto complete一样,在单击按钮时无法选择值。但是它在单击按钮时工作。因此,我需要手动覆盖key事件上的key事件。怎么可能?