提问人:Bryantcore 提问时间:11/17/2023 最后编辑:Bryantcore 更新时间:11/17/2023 访问量:79
是否可以避免在CMD中按Enter键?[关闭]
Is it possible to avoid pressing Enter in the CMD? [closed]
问:
闭。这个问题正在寻求有关书籍、工具、软件库等的建议。它不符合 Stack Overflow 准则。它目前不接受答案。
我们不允许提出有关书籍、工具、软件库等建议的问题。您可以编辑问题,以便用事实和引文来回答。
2天前关闭。
我没有足够的编程知识来详细讨论,但我会尽我所能描述这个问题。
我有一个小游戏,使用 CMD 作为图形环境。角色使用 WASD 在矩阵中移动。运动奏效了。玩家必须输入一个特定的键(WASD),然后按ENTER键,让角色在矩阵中的每个方块之间移动1个单位。
问题是,我想避免每次需要执行移动时都必须按 ENTER。据我了解,CMD在这方面有一定的局限性。我应该求助于一些第三方库来实现这一点吗?
我感谢任何帮助。
答:
1赞
David Weber
11/17/2023
#1
前言
CMD 不是为此而构建的。您需要一个解决方法。
溶液
创建一个 KeyListener,用于侦听 KeysReleased 事件。
例如,在释放“W”键后,您可以执行按键并由应用程序本身释放的 ENTER 键。
为此,您不能使用 AWT/Swing 类。您需要编写自己的 KeyListener。
KeyListener
使用该类按应用程序按键。
Robot
因此,如果您打开 CMD 并键入 AWSD,您的操作系统会将 Keys 类型写入 CMD,并且 KeyListener 将为您按 ENTER。
注意
您可以尝试将其作为 KeyListener:
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String line = "";
while (line.equalsIgnoreCase("quit") == false) {
line = in.readLine();
//do something
}
in.close();
也许你需要一秒钟.Thread
评论