无法让Robot类右键单击

时间:2013-02-05 13:51:29

标签: java robot

我正在尝试让Robot类右键单击屏幕上的图像,以便我可以保存它。问题是,我似乎无法让机器人成功模拟右键单击。以下是我正在做的一些示例代码。

似乎BUTTON2_DOWN_MASK是滚轮的遮罩。每当我执行此代码时,它首先只是定期点击该位置,然后滚动滚轮超快速移动圈弹出并告诉我现在我可以以光速滚动,但我想要右键单击..

CODE:

// This is the function I use to simulate a full click at location x,y on the screen
// Rob is my Robot
public void click(int x, int y, int mask)
{
    rob.mouseMove(x, y);
    sleepy(1000);
    rob.mousePress(mask);
    rob.mouseRelease(mask);
}

// This is the few lines of code that call this function
// sleepy just calls the Thread.sleep function.

sleepy(1000); // Wait one second
click(705, 390, InputEvent.BUTTON1_DOWN_MASK);
sleepy(1000);
click(705, 390, InputEvent.BUTTON2_DOWN_MASK);
sleepy(1000);

1 个答案:

答案 0 :(得分:14)

使用InputEvent.BUTTON3_DOWN_MASK进行右键单击。正如你所注意到的那样,BUTTON2正确地注意到了鼠标轮,左键是BUTTON1。

请参阅此example