2013-02-17 86 views
0

我正在嘗試使用Robot類創建一個遊戲bot。 我曾嘗試下面的代碼來執行鼠標的右鍵點擊:使用Robot類的Java bot

robot.mousePress(InputEvent.BUTTON3_MASK); 
robot.mouseRelease(InputEvent.BUTTON3_MASK); 

和它的工作。

我在客戶端3D在線遊戲上測試它。

按「1」鍵應該執行某種動作遊戲中,而當我嘗試下面的代碼也沒有工作:

robot.keyPress(KeyEvent.VK_1); 
robot.keyRelease(KeyEvent.VK_1); 

但是,當我使用的代碼,它沒有工作而講在遊戲中聊天。

它一遍又一遍地被測試,我不斷得到相同的結果。

這是我做錯了什麼嗎?或者遊戲檢測到我不是那個按下那個鍵的人。

回答

6

您可能太快釋放密鑰。嘗試睡眠30〜60ms才能放開鑰匙:

robot.keyPress(KeyEvent.VK_1); 
try { 
    Thread.sleep(50); 
} catch(Exception e) { 
    e.printStackTrace(); 
} 
robot.keyRelease(KeyEvent.VK_1); 
+0

謝謝!工作,我會盡可能接受。 – 2013-02-17 01:24:20

+0

@ImriPersiado如果它解決了你的問題,你應該能夠接受nneonneo的答案,我不相信這會限制任何人接受答案的能力。 – 2013-02-17 01:29:56

+0

「你可以在5分鐘內接受答案」 – 2013-02-17 01:31:05