【发布时间】:2023-03-24 06:11:01
【问题描述】:
我有两个 Java swing 应用程序(意味着在两个 JVM 中运行)。有没有办法在它们之间切换?通过 Java 代码激活另一个应用程序的窗口?
【问题讨论】:
-
不,纯Java没有办法
-
“在它们之间切换”是什么意思? alt+tab 将在它们之间切换一次...
-
参见本地JVM之间的通信:stackoverflow.com/questions/5052102/…
-
查看 RMI(远程方法调用):docs.oracle.com/javase/tutorial/rmi/index.html
-
您似乎想与已经运行的JVM进程进行交互。所以,我认为
Launcher或ProcessBuilder不能满足您的要求,因为它将启动一个新的JVM 进程。如果这是基于 Windows 的 Java Swing 应用程序,您可以使用 JNA 调用 User32FindWindow函数来搜索具有给定窗口标题名称的窗口并根据其进程 ID 设置其活动状态。