在代码中复制鼠标行为

时间:2013-05-24 19:44:21

标签: java windows focus swt java-7

这与问题有关:Focus problems with JDK7 and native components

在处理变通方法时,我们注意到如果我们点击窗口上的另一个组件(即显示图片的标签)然后单击文本字段(在Flash应用程序中),一切似乎都能正常工作。所以我一直试图从代码中重现这一点,但还没有成功。

基本上,当检测到鼠标悬停在文本框上时,我会收到来自Flash程序的通知,并且我请求关注标签,因此当用户点击实际字段时,标签已经具有焦点。

我请求这样的焦点:

draggableComponent.requestFocus();

draggableComponent是我一直在讨论的标签。我想这不等于点击标签。我缺少什么?

1 个答案:

答案 0 :(得分:0)

最后我找到了答案here

以下示例显示如何使用java.awt.Robot类在Java中模拟鼠标和按键。

try {
    Robot robot = new Robot();

    // Simulate a mouse click
    robot.mousePress(InputEvent.BUTTON1_MASK);
    robot.mouseRelease(InputEvent.BUTTON1_MASK);

    // Simulate a key press
    robot.keyPress(KeyEvent.VK_A);
    robot.keyRelease(KeyEvent.VK_A);
} catch (AWTException e) {
    e.printStackTrace();
}

Robot课程给了我所需的一切。