2017-05-24 57 views
1

我們可以使用數字鍵盤的鍵盤快捷鍵即鍵盤快捷鍵移動鼠標光標(數字鍵盤),即,6,2,8 ......不與Java Robot類

4-left 6-right 2-down 8-up 

滾動工作鼠標光標而不使用鼠標。

通過啓用

訪問中心的訪問\輕鬆的控制面板\易於\使鼠標更易於使用

但它不是用java機器人類工作 - 它只是打印數字即4/6/2/8在屏幕上。

任何想法可能是什麼問題?

代碼:

import javax.swing.*; 
import java.awt.*; 
import java.awt.event.*; 
import java.util.logging.Level; 
import java.util.logging.Logger; 
class MoveCursor 
{ 
    public static void main(String[] args) 
    { 
     try { 
      Robot r=new Robot(); 
      r.keyPress(KeyEvent.VK_NUMPAD4); 
      r.delay(4000); 
      r.keyRelease(KeyEvent.VK_NUMPAD4); 
     } catch (AWTException ex) { 

Logger.getLogger(MoveCursor.class.getName())日誌(Level.SEVERE,空,前); } } }

+2

這可能幫助,如果沒有一個重複的問題: https://開頭stackoverflow.com/questions/40942786/do-java-awt-robot-and-java-awt-event-keyevent-support-mousekeys –

回答

1

的文檔指出java.awt.Robot(見:https://docs.oracle.com/javase/8/docs/api/java/awt/Robot.html)類 「中的平臺的本地輸入隊列生成輸入」。

MouseKeys不能在同一級別上操作(它們實際上只是用鼠標移動操作替換擊鍵)。

因此,因爲MouseKeys不監視java.awt.Robot增加的本機輸入隊列,它不能用鼠標移動替換事件。

所以總之,結論是你不能結合java.awt.Robot類與鼠標鍵。


然而,java.awt.Robot類確實提供其他的功能,你可以使用控制鼠標,即在#mouseMove功能:https://docs.oracle.com/javase/8/docs/api/java/awt/Robot.html#mouseMove-int-int-

+0

謝謝先生那麼什麼是使用java滑動鼠標的簡單方法 –

+0

'java。 awt.Robot'類還提供了移動鼠標的功能:https://docs.oracle.com/javase/8/docs/api/java/awt/Robot.html#mouse移動-INT-內部 - – nbokmans