如何在不改变Y坐标的情况下在X坐标中设置鼠标位置

问题描述:

例如 如果鼠标在X坐标上的位置超过400像素,则机器人将在X坐标中将鼠标位置移动到350像素但是Y坐标中的鼠标必须不受影响。如何在不改变Y坐标的情况下在X坐标中设置鼠标位置

因为在机器人类,如果我想设置鼠标的位置这样的代码

bot.mouseMove(350, 400); 

在这段代码我必须设置Y位置了。 于是我想出了一些想法像 使用Y的最后位置在像这样的代码

void draw(){ 
    if(mouseX<=5) 
    { 
    try 
    { 
    Robot bot = new Robot(); 
    bot.mouseMove(420, mouseY); 
    } 
    catch (AWTException e) 
    { 
    e.printStackTrace(); 
    } 
    } 
} 

,但它不能正常工作。我认为这是因为“mouseY”是鼠标在窗口中的位置。但moseMove()会根据监视器屏幕的位置设置鼠标。

请给我一些建议,并非常感谢您的时间。

随着java.awt.MouseInfo - getPointerInfo()

返回表示鼠标指针的当前位置的PointerInfo实例[...]

你可以用它来读取当前的Y位置并更改X值。您也可以更改以下代码来更改Y位置。

import java.awt.MouseInfo;

,然后尝试:

bot.mouseMove(420, MouseInfo.getPointerInfo().getLocation().y); 


为您的代码,这样的事情:

呼叫draw(SOMEVALUE, MouseInfo.getPointerInfo().getLocation().y);

void draw(int mouseX, int mouseY){ 
    if(mouseX<=5) 
    { 
    try{ 
     Robot bot = new Robot(); 
     bot.mouseMove(420, mouseY); 
    }catch (AWTException e){ 
     e.printStackTrace(); 
    } 
    } 
}