2 台のモニターにテキストを表示するプログラムを作成しています。
現在、私の方法は、両方のモニターで LibGDX ウィンドウを起動し、それぞれを個別に制御することです。ただし、両方がフルスクリーンの場合、フォーカスできるウィンドウは 1 つだけです。焦点が合っていないウィンドウは非表示になります。これを解決するにはどうすればよいですか?
仕様:
ウィンドウズ10
Java 1.8
LibGDX 1.9.3、LWJGL 3 バックエンドを使用
コード:
ApplicationListener で:
@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 }
私はこれを間違った方法で見ていますか?ありがとう!