【问题标题】:I need to stop certain key sequences from happening我需要阻止某些键序列发生
【发布时间】:2012-10-07 16:18:16
【问题描述】:

我需要阻止某些键序列发生。我正在构建一个 kiosk 类型的应用程序以进行练习,并且在应用程序运行时,我需要锁定 Alt+Tab 组合,以及 Ctrl 等其他组合+Shift+Esc.

我找到了this link,但我尝试将它作为一个单独的类运行并将其合并到我的主类中,我仍然可以按 tab

任何和所有的帮助都会很棒!

【问题讨论】:

  • 您能说明您尝试在哪里实施您链接到的解决方案吗?
  • 某些组合键,例如 Ctrl + Alt + Del,在任何客户端程序中都很难拦截,当然在独立于平台的 Java 程序中也是如此。

标签: java keyboard keyboard-shortcuts


【解决方案1】:

最好的方法是使用 KeyListener 或 KeyAdapter 拦截 KeyEvents,并过滤掉你想要阻止的那些。
这也可以防止这些击键被操作系统拦截,但正如 Jesper 所指出的,这是否真的会发生还远未确定。
为了有效拦截此类事情,您将不得不安装更接近操作系统的特殊软件,例如定制的键盘驱动程序。

【讨论】:

  • 哦,好吧......所以我提供的网址,这对基本的组合键屏蔽有用吗?如果是这样,我会将代码放在哪里?
  • 它可以作为基础,是的。您的工作是找出要拦截的特定代码。您可能需要让侦听器在系统的每个屏幕和弹出窗口中运行。
  • 那么我会将它应用于整个框架吗?我现在只有一个框架,有多个面板..
  • 我认为应该可以。自从我使用 Swing 以来已经有 8 年了,所以我对细节生疏了。
猜你喜欢
  • 1970-01-01
  • 2022-07-28
  • 2017-06-23
  • 2017-07-19
  • 1970-01-01
  • 2014-02-15
  • 2021-08-06
  • 1970-01-01
  • 2017-12-16
相关资源
最近更新 更多