如何在不改变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();
}
}
}