2016-02-27 7 views
5

Ich versuche, dem Benutzer die Möglichkeit zu geben, wie er das Spiel spielen will. Fenster- und Vollbildmodus sind kein Problem. Die Sache, an die ich nicht zu arbeiten scheint, ist der randlose Fullscreen/gefensterte Vollbildmodus. Ich suchte im Internet und fand nur eine Website, die mir geholfen haben:libgdx grenzenlos Vollbild

http://badlogicgames.com/forum/viewtopic.php?f=11&t=13863

ich, wie mir gesagt wurde, tat und ich denke, es irgendwie funktioniert, mein Problem ist, die Fenster 10 Symbolleiste am unteren Rand ist immer in vor dem Fenster. Hier ist das Bild, wie es aussieht:

http://imgur.com/hdA3LAb

Die Farbe ist schrecklich, aber nur zu Testzwecken. Code sieht so aus:

if (screenManager.FULLSCREEN) { 
    Gdx.graphics.setDisplayMode(Gdx.graphics.getDesktopDisplayMode().width, Gdx.graphics.getDesktopDisplayMode().height, true); 
} else if (screenManager.WINDOWEDFULLSCREEN) { 
    System.setProperty("org.lwjgl.opengl.Window.undecorated", "true"); 
    Gdx.graphics.setDisplayMode(Gdx.graphics.getDesktopDisplayMode().width, 
    Gdx.graphics.getDesktopDisplayMode().height, false); 
} else { 
    Gdx.graphics.setDisplayMode(screenManager.WIDTH, screenManager.HEIGTH, false); 
} 

Wie kann ich das beheben?

Bearbeiten: Ich aktualisierte auf 1.9.2, die nicht über die setDisplayMode-Methode verfügt. Der Code sieht nun wie folgt aus:

DisplayMode mode = Gdx.graphics.getDisplayMode(); 
if (screenManager.FULLSCREEN) { 
    Gdx.graphics.setWindowedMode(Gdx.graphics.getDisplayMode().width, Gdx.graphics.getDisplayMode().height); 
    Gdx.graphics.setFullscreenMode(mode); 
} else if (screenManager.WINDOWEDFULLSCREEN) { 
    System.setProperty("org.lwjgl.opengl.Window.undecorated", "true"); 
    Gdx.graphics.setWindowedMode(Gdx.graphics.getDisplayMode().width, Gdx.graphics.getDisplayMode().height); 
    //Gdx.graphics.setFullscreenMode(mode); 
} else { 
    Gdx.graphics.setWindowedMode(screenManager.WIDTH, screenManager.HEIGTH); 
} 

Alles funktioniert wie vorher, nur die randlose Vollbild hat der Windows-Symbolleiste (das Ding auf dem Botton) Infront es, genau wie im Bild. Normaler Vollbildmodus funktioniert einwandfrei.

+0

Möchten Sie den Rahmen einer gefensterten Anwendung entfernen? Wenn dies der Fall ist, sollten Sie versuchen, "Wie entferne ich einen Rahmen aus einer gefensterten Anwendung" zu fragen. Seit jetzt verwirren Sie viele Leute mit dem Durcheinander in Ihrer Frage. Bitte seien Sie genau, wenn Sie Fragen stellen und alle irrelevanten Dinge daraus entfernen. – Madmenyo

+0

@MennoGouw der Code entfernt eigentlich schon den Rand ... – LePotatoCannon

Antwort

4

getestet einfach die folgende Konfiguration auf meinem Rechner mit Windows-10 und es funktionierte:

public class DesktopLauncher { 
    public static void main (String[] arg) { 
     LwjglApplicationConfiguration config = new LwjglApplicationConfiguration(); 
     config.width = LwjglApplicationConfiguration.getDesktopDisplayMode().width; 
     config.height = LwjglApplicationConfiguration.getDesktopDisplayMode().height; 
     config.fullscreen = true; 
     new LwjglApplication(new MyGame(), config); 
    } 
} 

Sie, dass

UPDATE versuchen in DesktopLauncher in Desktop-Modul einstellen sollte
Sie sollten:

Gdx.graphics.setFullscreenMode(Gdx.graphics.getDisplayMode()); 

Auch, welche Version von Lib GDX verwendest du? Ich bin auf Version 1.8.0 und ich habe keine Gdx.graphics.setDisplayMode() Methode.

+0

Wenn ich es so mache, wird das Spiel immer Vollbild sein. Aber der Benutzer sollte in der Lage sein, aus Vollbild-, Fenster-Vollbild-und Fenster-Modus wählen ... – LePotatoCannon

+0

@LePotatoCannon siehe aktualisierte Antwort – Enigo

+0

Ich habe 1.6.0, funktioniert der Vollbild-Modus, ich habe nur Probleme mit gefensted Fullscreen, ich hoffe, Sie wissen, was ich mean ... – LePotatoCannon