[英]How to prevent Robot mouseMove going out of the screen
我正在創建一個應用程序,我使用Android手機控制鼠標移動。
我面臨的問題是,如果將鼠標移動到屏幕的末端,它將繼續移動而不會結束。
如何防止鼠標到達屏幕末端時停止移動。 提前致謝。
以及如何在所有屏幕分辨率下使機芯通用?
public void evaluate(String message) {
String[] data = message.split(" ");
switch (data[0]) {
case "M":
try {
n[0] = new Float(data[1]);
n[1] = new Float(data[2]);
Thread mouse = new Thread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
Point a = MouseInfo.getPointerInfo().getLocation();
int x = (int) a.getX();
int y = (int) a.getY();
double scale = 1;
int xnew = (int) (scale * n[1] + x);
int ynew = (int) (scale * n[0] + y);
robo.mouseMove(xnew, ynew);
}
});
mouse.run();
} catch (Exception e) {
// TODO Auto-generated catch block
}
break;
}
您可以獲得當前的屏幕分辨率,並檢查newX和newY是否在您的屏幕中。
if(xnew < width && ynew < height) robo.mouseMove(xnew, ynew);
要獲得屏幕重新設置:
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
double width = screenSize.getWidth();
double height = screenSize.getHeight();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.