当前位置: 首页 > 知识库问答 >
问题:

如何在JavaFX中添加键快捷键?

慕容光启
2023-03-14

新用户:从一月份开始学习Java,现在我正在使用NetBeans,如果我写这个简单的快捷方式,我会得到大量的错误。

Scene root = new Scene(layout ,Screen.getPrimary().getBounds().getWidth()/2, Screen.getPrimary().getBounds().getHeight()/2);

root.setOnKeyPressed(new EventHandler<KeyEvent>() {

    public void handle(KeyEvent key) {

      if (key.getCode() == KeyCode.P && key.isControlDown()) {

          primaryStage.close();

      }
    }
  });

所以IDE只是告诉我,我几乎做错了一切。在setOnKeyPressed的线路上,我得到了

我导入了所有内容,并从StackOverflow.com上的另一个问题(可能是有效的)中复制了这段代码。我只想按“esc”,并在root被聚焦的情况下关闭我的primarystage(不管是不是,我只是试图理解如何做到这一点)。

谷歌搜索这对我来说非常令人沮丧,我总是在这个网站上找到不起作用的解决方案,或者在其他网站上创建了“监听器”、“组合键”或“助记符”。我不需要使用它们来理解这种语言是如何处理事件的,我知道这是可能的,但我找不到html" target="_blank">解决方案(即使是Oracle,什么都没有)。解决办法可能很简单,但我正在疯狂地寻找它

共有1个答案

谭勇
2023-03-14

t指事件处理程序处理的事件类型:请参见文档:

接口EventHandler

类型参数:
t-此处理程序可以处理的事件类

root.setOnKeyPressed( key -> {

    if (key.getCode() == KeyCode.P && key.isControlDown()) {
 
        primaryStage.close();

    }
});

现在编译器只需推断keyjavafx.scene.input.keyevent,您甚至不需要导入。

 类似资料:
  • 在这里您可以输入新建快捷方式的参数,它将被自解压程序在解压后创建。这个对话框包含下列区域: 创建到哪里 选择您希望创建快捷方式的位置。 源文件名 被压缩的文件名。 目标文件夹 创建快捷方式的文件夹,如果它不存在,它将被自解压文件创建。 快捷方式描述 描述快捷方式的文本。 快捷方式名 是由自解压程序创建的 .lnk (快捷方式)文件的文件名。 快捷方式图标 快捷方式关联的图标文件名称。如果保留空白,

  • 问题内容: 我有一个jButton,我想为其指定一个快捷方式。就像我按键盘上的Delete键一样,它只需单击一次jButton。我怎样才能做到这一点? 问题答案: 您需要创建一个供按钮使用的。然后,可以使用,并且可以将绑定到。 阅读Swing教程。有以下部分: 如何使用动作 如何使用键绑定 例如:

  • 问题内容: 我陷入了无法添加快捷键的某个步骤,例如:+ 在我的程序中,我搜索了一个星期,但找不到任何答案。 问题答案: 您将需要看一下Java Tutorial ,以更好地了解Key Bindings。 这是一个简单的例子:

  • 问题内容: 假设我键入“ sout”,智能感知应将其扩展为“ System.out.println()”。有没有添加此类模板的方法? 问题答案: 该功能在Eclipse中称为“代码模板”。您可以使用以下方法添加模板: 窗口->首选项-> Java->编辑器->模板。 两篇好文章: 不要编写代码,生成它 自定义模板 另外,这个SO问题: 有用的Eclipse Java代码模板 已映射到,因此您可以通

  • 我有一个按钮,我想在上面指定一个快捷方式。就像当我在键盘上按delete键时,它只会点击那个按钮一次。我该怎么做?