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

无论焦点在哪个JComponent上,如何为JFrame进行键绑定?

虞修平
2023-03-14
问题内容

无论框架的重点是什么,我们如何为JFrame进行键绑定?

我尝试为JFrame的根窗格设置输入映射,但是即使可编辑为false,当焦点位于JTextArea上时,该映射也不起作用。

使键绑定在整个JFrame中起作用的最简单方法是什么?


问题答案:

我尝试为JFrame的根窗格设置输入映射,但是即使可编辑为false,当焦点位于JTextArea上时,该映射也不起作用。

正确。如果组件具有焦点并实现相同的绑定,则该绑定将具有优先级。

如果您不希望该绑定适用于文本区域,则需要从文本区域中删除该绑定。

阅读Swing教程中有关如何使用键绑定的部分,以获取有关可以使用的各种InputMap的解释以及如何删除绑定的示例



 类似资料:
  • 问题内容: 背景 我的窗口是一个java.awt.Frame,并且在Frame内部是两个面板(java.awt.Panel)。我正在尝试使窗口能够处理我按下的按钮。 尝试1号 我尝试使用KeyListener,使Frame实现KeyListener。我将KeyListener添加到了Frame中,但是当我按下键时,KeyListener函数没有执行任何操作。(我尝试使用System.out.pri

  • 问题内容: 我正在编写一个小型游戏,其中一个JFrame负责主游戏,另一个JFrame负责显示得分。问题是,当我完成构建它们时,分数JFrame总是最终集中精力!我试过调用scoreDisplay.toFront(),scoreDisplay.requestFocus(),甚至: 有什么办法可以使这项工作吗?预先感谢,约翰·穆拉诺 问题答案: 您是否考虑过将得分设置在与游戏框架相同的框架中? 其他

  • 问题内容: 我想在Linux(Ubuntu Linux 9.10)上编写一个程序(使用python),该程序将跟踪我每秒产生的每秒钟按键次数。这包括普通字母键,以及控制/ Shift /空格/等。 是否有某种方法可以挂接到X,以便我可以说“按下键时调用此函数?”。由于我希望在正常工作时在后台运行此功能,因此该函数调用必须能够知道所有程序的所有按键。我想它有点像键盘记录器。 这只是一个私人的事情,所

  • 问题内容: 有2个课程- 我试图在侦听器上设置鼠标单击,但是当我运行它然后按鼠标单击时,没有任何反应。 如何使其工作? 问题答案: 为了在框架上获得鼠标点击,您还需要添加到的框架列表中。创建后尝试添加以下行:

  • 问题内容: 我让我的游戏在没有鼠标的情况下运行,因此不能使用指针。当玩家输球时将显示高分菜单。 这是我的代码 我努力了 但仍然没有专注于我的。 如何聚焦呢? 问题答案: 如果希望在GUI显示时集中精力,可以使用以下方法: 哪里会是你和你的。

  • 问题内容: 我正在实现任务栏替换,类似于码头的应用程序切换器风格的程序。它使用OpenGL和键盘快捷键来做一些独特的事情,因此在设置方式上,窗口并不总是具有焦点。我想要实现它,以便可以将任意窗口带到前台,就像任务栏或ALT- TAB程序一样。 但是,我的代码只是导致应用程序图标在任务栏中闪烁。Windows API文档说这是应该发生的,但是我正在寻找一种解决方法。 我已经从以下示例改编了我的代码,