2016-02-27 22 views
5

Provo a dare all'utente l'opzione di come vuole giocare. La finestra e la modalità a schermo intero non sono un problema. La cosa che non riesco a far funzionare è lo schermo intero senza bordi/a schermo intero. ho cercato nel web e ho trovato un solo sito che mi ha aiutato:libgdx fullscreen senza bordi

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

ho fatto come mi è stato detto e penso che funziona un po, il mio problema è, le finestre 10 barra degli strumenti in fondo è sempre in davanti alla finestra. Ecco l'immagine di come appare:

http://imgur.com/hdA3LAb

Il colore è terribile, ma solo a scopo di test. Il codice è simile al seguente:

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); 
} 

Come posso risolvere questo problema?

Modifica: Ho aggiornato alla versione 1.9.2, che non ha il metodo setDisplayMode. Il codice appare come segue:

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); 
} 

Tutto funziona come prima, solo il fullscreen senza confini ha la barra degli strumenti di Windows (la cosa sul bottone) infront di esso, proprio come nella foto. La modalità a schermo intero normale funziona correttamente.

+0

Stai cercando di rimuovere il bordo di un'applicazione con finestre? In tal caso, potresti provare a chiedere "Come rimuovere il bordo dall'applicazione con finestre". Da ora stai confondendo un sacco di persone con la confusione nella tua domanda. Per favore sii specifico quando fai domande e lasci tutte le cose irrilevanti fuori da esso. – Madmenyo

+0

@MennoGouw il codice effettivamente rimuove già il bordo ... – LePotatoCannon

risposta

4

appena testato la seguente configurazione sulla mia macchina con Windows 10 e ha funzionato:

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); 
    } 
} 

è necessario impostare che in DesktopLauncher nel modulo del desktop

UPDATE
si dovrebbe provare:

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

Inoltre, quale versione di Lib GDX stai usando? Sono sulla versione 1.8.0 e non ho il metodo Gdx.graphics.setDisplayMode().

+0

Se lo faccio in questo modo, il gioco sarà sempre a schermo intero. Ma l'utente dovrebbe essere in grado di scegliere da schermo intero, finestra a schermo intero e modalità finestra ... – LePotatoCannon

+0

@LePotatoCannon vedere risposta aggiornata – Enigo

+0

Ho ottenuto la versione a schermo intero, la modalità a schermo intero funziona, ho solo problemi con la finestra a schermo intero, spero che tu sappia cosa ho significa ... – LePotatoCannon