開いているすべてのウィンドウをJavaでスキャンして、指定されたウィンドウを見つけることは可能ですか? メモ帳と言いますか?たとえば、メモ帳を前面と中央に開いて準備を整え、プログラムを実行すると、開いているすべてのウィンドウがスキャンされ、メモ帳が前面に表示されます。
2 に答える
0
私は Windows システムで豊富な経験を持っています。また、Windows システム固有の要件が Windows Management Instrumentation (WMI) で適切に満たされていることも知っています。私はあなたがやっていることのように WMI をうまく使ったことがありますが、Java を使ったことは一度もありません。これはWMIの説明 のリンク です。あなたが試したものと、その結論を教えてください。
Java を使用して WMI にアクセスする方法を理解すれば、Windows システムでほぼすべての操作を実行できます。もちろん、そのような要件を課せられた場合は、C# と .NET を使用します。しかし、Java はあなたの選択です</p>
于 2012-05-28T06:01:33.213 に答える
0
これは JNA を使用して実行できます。
import com.sun.jna.platform.win32.User32;
import com.sun.jna.platform.win32.WinDef.HWND;
// https://github.com/twall/jna#readme
// you need 2 jars : jna-3.5.1.jar and platform-3.5.1.jar
public class ActivateNotepad {
public static void main(String[] args) {
HWND hwnd = User32.INSTANCE.FindWindow("Notepad", null);
if (hwnd == null) {
System.out.println("No Notepad instance detected");
}
else{
System.out.println("Notepad instance found.");
User32.INSTANCE.SetForegroundWindow(hwnd);
}
}
}
于 2015-02-10T16:23:30.873 に答える