如何在不改变 Y 坐标的情况下在 X 坐标中设置鼠标位置
How to set mouse position in X coordinate without changing the Y coordinate
例如
如果鼠标在 X 坐标中的位置超过 400 像素,则机器人会将鼠标的位置移动到 X 坐标中的 350 像素,但鼠标在 Y 坐标中的位置必须不受影响。
因为在机器人中class如果我想像这样设置鼠标位置代码
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" 是鼠标在 window 中的位置 但是 moseMove() 会根据显示器屏幕的位置设置鼠标。
请给我一些建议,非常感谢您的宝贵时间。
使用 java.awt.MouseInfo - getPointerInfo()
Returns a PointerInfo instance that represents the current location of the mouse pointer.[...]
您可以使用它来读取当前 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();
}
}
}
例如 如果鼠标在 X 坐标中的位置超过 400 像素,则机器人会将鼠标的位置移动到 X 坐标中的 350 像素,但鼠标在 Y 坐标中的位置必须不受影响。
因为在机器人中class如果我想像这样设置鼠标位置代码
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" 是鼠标在 window 中的位置 但是 moseMove() 会根据显示器屏幕的位置设置鼠标。
请给我一些建议,非常感谢您的宝贵时间。
使用 java.awt.MouseInfo - getPointerInfo()
Returns a PointerInfo instance that represents the current location of the mouse pointer.[...]
您可以使用它来读取当前 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();
}
}
}