我正在编写一个程序来在两个显示器上显示文本。
现在我的方法是在两个监视器上启动一个 LibGDX 窗口,然后分别控制每个监视器。但是,当两者都处于全屏状态时,只有一个窗口可以具有焦点。失焦窗口被隐藏。我该如何解决这个问题?
眼镜:
视窗 10
Java 1.8
LibGDX 1.9.3,使用 LWJGL 3 后端
代码:
在应用程序监听器中:
@Override public void show() throws RuntimeException { // Throws exception if it is set to go to monitor 1 and it does not exist if (external && Gdx.graphics.getMonitors().length < 2) throw new RuntimeException("Cannot extend to secondary monitor."); Gdx.graphics.setFullscreenMode(Gdx.graphics.getDisplayMode(Gdx.graphics.getMonitors()[external ? 1 : 0])); }
然后,打开窗口:
@Override public void openWindow(ApplicationListener a) { Lwjgl3WindowConfiguration config = new Lwjgl3WindowConfiguration(); config.setTitle(title); config.setWindowListener(new Lwjgl3WindowListener() { @Override public void iconified() {} @Override public void focusLost() {} @Override public void focusGained() {} @Override public void filesDropped(String[] files) {} @Override public void deiconified() {} @Override public boolean closeRequested() { return true; } }); Lwjgl3Application app = (Lwjgl3Application) Gdx.app; window = app.newWindow(a, config); DesktopLauncher.openWindows.add(window); // Used to close all windows later }
我看错了吗?谢谢!