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

在Java中检测并作用于键盘方向键

翟冷勋
2023-03-14
问题内容

都好

我有一个控制台项目,旨在让用户按下键盘方向键(非数字键盘)来移动化身。我在编码时很难检查是否按下了这些键。在Pascal中,使用“
readkey”和代码非常容易,例如,按下按键的代码为#80。但是,尽管我认为我了解System.in和BufferedInputStream的用法,但我对如何在Java中实现相同功能感到困惑。

有人可以帮我吗?非常感谢您的想法或提示。


问题答案:

Java中的控制台支持问题是众所周知的,我不确定这是否可行。

最初使用System.in不可能实现,因为它以前是基于行的。

Sun最终添加了一个java.io.Console类。

以下是其JavaDocs:http
:
//java.sun.com/javase/6/docs/api/java/io/Console.html

一旦获得了控制台(我认为是从System.console获得的),就可以获取阅读器,也许还可以从中读取字符,但是我不确定它是否包含键。

通常,如果您想访问键盘,那应该使用Swing或AWT,这很愚蠢。

自2007年起,有一项功能要求:此处



 类似资料:
  • JavaFX中目前存在一个bug(https://javafx-jira.kenai.com/browse/rt-30669,需要免费注册),因此如果您使用azerty键盘布局并指定带有Z的加速器,在Mac上只有在输入W时才会触发。我需要解决这个bug,因为我现在需要发布我的产品。

  • 我还没有找到任何方法来解决这个问题。 我的应用程序中有一个网络视图。我希望能够检测键盘何时处于活动状态,何时处于非活动状态。当这些变化发生在网络视图中时,它似乎无法检测到。 我想对这些不同的状态执行操作。在iOS上,当键盘处于活动状态时,通过观察者进行监听非常简单。Ref UIKeyboard将显示/隐藏。 Android中是否有任何功能与这些观察者在Android中的功能相同? 希望这个问题解释

  • 问题内容: 我正在为iPad编写一个Web应用程序( 不是常规的App Store应用程序 -它是使用HTML,CSS和JavaScript编写的)。由于键盘占据了屏幕的很大一部分,因此在显示键盘时更改应用程序的布局以适合剩余空间将是有意义的。但是,我发现没有办法检测何时或是否显示了键盘。 我的第一个想法是假设当文本字段具有焦点时键盘可见。但是,将外部键盘连接到iPad时,当文本字段获得焦点时,虚

  • 在为Chromebooks和物理键盘准备Android应用程序时,我希望在编辑文本中区分从物理键盘接收“Enter”(键事件66)和“Shift+Enter”(显然也是键事件66)。我尝试了许多不同的解决方案,例如 活动中的DispatchKeyEvent(KeyEvent事件)。然而,Event.getModifiers()总是返回0,与Event.get转移()一样。KeyEvent.IsSh

  • 问题内容: 我想检测用户是否按下了jQuery。 这怎么可能?需要插件吗? 编辑:看来我需要使用该方法。 我想知道是否有人知道该命令是否存在浏览器问题-就像我应该知道的浏览器兼容性问题一样? 问题答案: jQuery的全部要点是,您不必担心浏览器的差异。我很确定您可以放心在所有浏览器中都为13。因此,请记住这一点:

  • 问题内容: 我正在用python开发一个秒表类型的程序,我想知道如何检测是否按下了一个键(例如p表示暂停,s表示停止),而我不希望它像raw_input这样等待用户输入,然后继续执行。有人知道如何在while循环中执行此操作吗? 另外,我想做这个跨平台的,但是如果那不可能,那么我的主要开发目标是linux 问题答案: 对于那些在窗户上努力寻找可行答案的人,我的是:pynput 上面的功能将打印你按