Javaで私のウィンドウの外でマウスクリック座標を取得する方法

cd1:

Swingを使用して、ユーザーが画面上の任意の場所をクリックしたときにマウスの座標を取得できるクラスを実装する必要があります。自分のウィンドウ内でマウスの座標を取得しMouseListenerたい場合は、を使用しますが、ユーザーがプログラムの外側をクリックしても機能するようにします。

クラスをKColorChooserと同じように動作させます。ユーザーがドロップボタンをクリックすると、画面上の任意の場所をクリックしてそのスポットの色を取得できます。しかし、純粋なJavaを使用してそれが可能かどうかはわかりません。

キーリー:

制限はありますが可能です:

フォーカスイベントのAWTEventListenerを追加します。ボタンがクリックされる前にアプリにフォーカスがある限り、フォーカスが失われたイベントを受け取ります。次に、ポインタの位置を問い合わせます。

もちろん、制限はアプリがフォーカスを失うことです。したがって、最終的にこれを達成しようとしていることによっては、役に立たない場合があります。

フォーカスを失いたくない場合は、一時的に画面全体のスクリーンショットを撮り、通常どおりマウスのクリックをリッスンする画面入力ウィンドウに表示する必要があります。

最初の方法の証明:

import java.awt.AWTEvent;
import java.awt.MouseInfo;
import java.awt.Toolkit;
import java.awt.event.AWTEventListener;

import javax.swing.JFrame;

public class Application1 {
    public static void main(String[] args) {
        Toolkit.getDefaultToolkit().addAWTEventListener(
          new Listener(), AWTEvent.MOUSE_EVENT_MASK | AWTEvent.FOCUS_EVENT_MASK);
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }

    private static class Listener implements AWTEventListener {
        public void eventDispatched(AWTEvent event) {
            System.out.print(MouseInfo.getPointerInfo().getLocation() + " | ");
            System.out.println(event);
        }
    }
}

生成されたアプリの外側をクリックすると:

java.awt.Point[x=198,y=59] | java.awt.event.MouseEvent[MOUSE_EXITED, ...
java.awt.Point[x=976,y=503] | java.awt.FocusEvent[FOCUS_LOST, ...

2番目のポイントは、アプリの外です。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

OpenOfficeBASICマクロでマウスクリックからドキュメント座標を取得する方法

分類Dev

WebBrowserドキュメントでのマウスクリック座標の取得

分類Dev

(Java)ウィンドウ内のマウス座標を取得

分類Dev

javafxで3Dオブジェクトのウィンドウで2D座標を取得する方法

分類Dev

ウィンドウのサイズを変更するときにマウスクリックを使用して画像の座標を取得するにはどうすればよいですか?

分類Dev

three.jsでマウスクリックポイントの3D座標を取得します

分類Dev

スイングウィンドウに対するマウスクリックの位置を取得する方法

分類Dev

a-frameシーンでのマウスクリックの3D座標位置を知る方法

分類Dev

マウスクリックでXY座標をPHP変数に取得する

分類Dev

現在の画面またはウィンドウ(ページ全体ではない)を基準にしてマウスの座標を取得する方法

分類Dev

Python:matplotlib.canvasを使用してマウスクリックで座標を取得する方法

分類Dev

ウィンドウのフォーカスが「スタック」する - ウィンドウの外をクリックできない

分類Dev

テキスト座標のtextareaでマウスクリックの場所を取得します

分類Dev

マウスクリックイベントの座標をmatplotlibに保存する

分類Dev

マウスopencvなしで目的の座標をクリックします

分類Dev

OpenGLは、C ++でのマウスクリックでカーソル座標を取得します

分類Dev

キャンバスをクリックしたときにマウスの座標を取得する

分類Dev

ボタンをクリックするとマウスの座標を取得します

分類Dev

マウスクリックでmatplotlibプロット図pythonの座標を取得します

分類Dev

バウンディングボックスの座標を変更する方法

分類Dev

検出された面のバウンディングボックスのxy座標を取得する方法

分類Dev

Pythonグラフィックライブラリ:ウィンドウのx座標とy座標を設定する方法は?

分類Dev

ウィンドウの現在の座標を取得する(C ++)

分類Dev

マウスが外pygameのウィンドウであるかどうかをチェック

分類Dev

クリックしたマウスの座標を取得するにはどうすればよいですか(数学計算のみが必要です)

分類Dev

wmctrlから取得した座標でXウィンドウのジオメトリを指定する

分類Dev

wmctrlから取得した座標でXウィンドウのジオメトリを指定する

分類Dev

canvas要素でのマウスクリックの座標を取得するにはどうすればよいですか?

分類Dev

Win32 API で透明ウィンドウからのマウス入力をブロックする方法は?

Related 関連記事

  1. 1

    OpenOfficeBASICマクロでマウスクリックからドキュメント座標を取得する方法

  2. 2

    WebBrowserドキュメントでのマウスクリック座標の取得

  3. 3

    (Java)ウィンドウ内のマウス座標を取得

  4. 4

    javafxで3Dオブジェクトのウィンドウで2D座標を取得する方法

  5. 5

    ウィンドウのサイズを変更するときにマウスクリックを使用して画像の座標を取得するにはどうすればよいですか?

  6. 6

    three.jsでマウスクリックポイントの3D座標を取得します

  7. 7

    スイングウィンドウに対するマウスクリックの位置を取得する方法

  8. 8

    a-frameシーンでのマウスクリックの3D座標位置を知る方法

  9. 9

    マウスクリックでXY座標をPHP変数に取得する

  10. 10

    現在の画面またはウィンドウ(ページ全体ではない)を基準にしてマウスの座標を取得する方法

  11. 11

    Python:matplotlib.canvasを使用してマウスクリックで座標を取得する方法

  12. 12

    ウィンドウのフォーカスが「スタック」する - ウィンドウの外をクリックできない

  13. 13

    テキスト座標のtextareaでマウスクリックの場所を取得します

  14. 14

    マウスクリックイベントの座標をmatplotlibに保存する

  15. 15

    マウスopencvなしで目的の座標をクリックします

  16. 16

    OpenGLは、C ++でのマウスクリックでカーソル座標を取得します

  17. 17

    キャンバスをクリックしたときにマウスの座標を取得する

  18. 18

    ボタンをクリックするとマウスの座標を取得します

  19. 19

    マウスクリックでmatplotlibプロット図pythonの座標を取得します

  20. 20

    バウンディングボックスの座標を変更する方法

  21. 21

    検出された面のバウンディングボックスのxy座標を取得する方法

  22. 22

    Pythonグラフィックライブラリ:ウィンドウのx座標とy座標を設定する方法は?

  23. 23

    ウィンドウの現在の座標を取得する(C ++)

  24. 24

    マウスが外pygameのウィンドウであるかどうかをチェック

  25. 25

    クリックしたマウスの座標を取得するにはどうすればよいですか(数学計算のみが必要です)

  26. 26

    wmctrlから取得した座標でXウィンドウのジオメトリを指定する

  27. 27

    wmctrlから取得した座標でXウィンドウのジオメトリを指定する

  28. 28

    canvas要素でのマウスクリックの座標を取得するにはどうすればよいですか?

  29. 29

    Win32 API で透明ウィンドウからのマウス入力をブロックする方法は?

ホットタグ

アーカイブ