0
我使用Java Swing应用程序,该应用程序允许在多个屏幕上显示分散的帧。如何将Swing窗口移出屏幕?
问题是,在双屏幕中,帧可以保存在辅助监视器2中,但是当应用程序仅在一个监视器上加载时,帧将不在屏幕上,因此不可见。
有人知道使用Java Standard API来识别和恢复主屏幕的方法吗?
我使用Java Swing应用程序,该应用程序允许在多个屏幕上显示分散的帧。如何将Swing窗口移出屏幕?
问题是,在双屏幕中,帧可以保存在辅助监视器2中,但是当应用程序仅在一个监视器上加载时,帧将不在屏幕上,因此不可见。
有人知道使用Java Standard API来识别和恢复主屏幕的方法吗?
我想你可以使用:
public abstract GraphicsDevice[] getScreenDevices() throws HeadlessException
返回一个包含所有表示屏幕设备
http://docs.oracle.com/javase/6/docs/api/java/awt/GraphicsEnvironment.html#getScreenDevices()
如果这种方法给你的两个或两个以上的项目名单,然后将所有的GraphicsDevice对象的数组你有多监视器环境。
请参阅[使用多个JFrames,好/坏的做法?](http://stackoverflow.com/a/9554657/418556) – 2013-05-13 10:54:12
更快地帮助发布[SSCCE](http://sscce.org /),简短,可运行,可编译,只有两个空的JFrames,导致问题,其他细节可能是关于GPU的硬件描述,屏幕分辨率不重要 – mKorbel 2013-05-13 10:54:18
看一看[this](http://stackoverflow.com/问题/ 11714215/detect-current-screen-bounds/11714302#11714302)演示了如何获得虚拟界限。基本上,你可以检查窗口的边界并根据需要调整值 – MadProgrammer 2013-05-13 10:56:36