6

我正在使用 Arduino Uno 通过 USB 或蓝牙将(正版)SNES 控制器连接到计算机。

Arduino 使用snespad 库捕获控制器的按钮按下和释放。它将按钮按下和释放作为字符进行通信(例如,'a' 用于按下 A,'A' 用于释放'A')。接下来,Java 程序使用rxtx 库监听串行输出。最后,Java 机器人使用keyPresskeyRelease模拟按键。

不幸的是,这种方法有一些缺点。主要问题是键映射。我有点武断地决定哪些按钮是哪些键盘键。

Java 似乎没有任何游戏手柄KeyEvents。当我说“游戏手柄 KeyEvent”时,我的意思是类似于 Android SDK 的内容:http: //developer.android.com/reference/android/view/KeyEvent.html (ctrl+f "game pad" or "button" .)

我的问题是,有没有办法使用 Java 的机器人类来模拟游戏板按钮按下而不是击键?

4

2 回答 2

0

在 JAVA 中使用机器人类

您可以通过以下方式创建虚拟按键/释放...

Robot robo=new Robot();
robo.keyPress(KeyEvent.VK_A);
//don't forget to release it else you'll land up in infinite loop
robo.KeyRelease(KeyEvent.VK_A);

干杯

于 2013-04-17T08:37:26.960 回答
-1

根据我的经验,您应该能够轻松地将游戏手柄按钮映射到键盘按钮我知道的唯一映射 i,j,k,l 去环顾四周,w,a,s,d 去四处移动

于 2016-08-28T22:12:22.193 回答