Windows の無関係なウィンドウから位置情報を取得できるプログラムを Java で作成しようとしています。表示されているすべてのウィンドウからの四角形が必要です。最小化されているウィンドウとその Z オーダーを知る必要があります。ここで多くの質問を読み、JNAから少し学びましたが、まだいくつかの問題があります。(コードをコンパイルできませんでしたが、ここから知っている情報のほとんどを収集しました: Windows: 表示されているすべてのウィンドウのリストを取得する方法は? )
プログラムは、ユーザー ウィンドウではありませんが、多数のウィンドウを表示します。Windows がこのように機能することを知らなかったので、ユーザー ウィンドウを他のすべての「ジャンク」ウィンドウから除外するにはどうすればよいですか?
Main.RECT は jna.Structure (getFieldOrder()) からの抽象メソッドを実装する必要があるため、@mdma からのリンクされたコードはコンパイルされません。これは JNA の異なるバージョンに関連する問題ですか? 私は明らかに間違ったことをしていますか?
このプログラムを作成するために JNA を学ぶのに苦労していますが、WinAPI を扱ったことがなく、かなり混乱しています。お待ちいただいてありがとうございます。
編集:これは、コンパイルできなかったコードの短いスニペットです。最新の JNA (3.5.1) を使用しています。
import com.sun.jna.Structure;
public class Main {
public static void main(String[] args) {
public static class RECT extends Structure {
public int left,top,right,bottom;
}
}
}