3

Java で mousePressed イベントをシミュレートしたいのですが、このクラスを使用できることがわかりました。Robotこれは動作しますが、Windows でのみ動作し、Mac OS X では動作しません。

mousePressedイベントをシミュレートする別の方法を知っている人はいますか?

これは私が使用したコードです:

Robot robot = new Robot();
robot.mousePress(InputEvent.BUTTON1_MASK);
4

3 に答える 3

2

メソッドJButtonを呼び出すことができる上でクリック アクションをシミュレートする場合は、こちらをご覧ください。それ以外の場合は、この同様の質問が役立つかもしれません。お役に立てれば。doClick

于 2011-04-03T11:37:18.283 に答える
1

java.awt.robot.mousePress(int button) を使用すると同じ問題が発生し、チェックすることで mac os x 10.8 で動作しませんでした

int b = InputEvent.getMaskForButton(MouseEvent.BUTTON1); //1024  
int c = InputEvent.BUTTON1_MASK; //8  
// works on mac  
Robot r = new Robot();  
r.mouseMove(500, 500);  
r.mousePress(1024);  
r.mouseRelease(1024);  
于 2014-01-18T02:18:28.017 に答える
0

これが役立つサンプルコードです。

private final class ContractMouseAdapter extends MouseAdapter {

    @Override
    public void mousePressed(MouseEvent e) {
        // Do whatever you want.
    }

}

そして、このアダプターを ur Swing コードで次のように呼び出します。

MouseAdapter mouseAction = new ContractMouseAdapter(Component);
于 2011-04-07T18:33:18.833 に答える