Ich werde bald ein Projekt durchführen und muss den Vollbildmodus verwenden.
Es werden einige Grafiken in das Fenster gezeichnet. Es wäre praktisch, wenn ich JFrame oder ähnliches verwenden würde.
Ich weiß nicht, wie die endgültige Auflösung des Bildschirms aussehen wird. Bitte sagen Sie mir, ob die Grafiken automatisch neu skaliert werden.
JFrame jf = new JFrame();
jf.setSize(1650,1080);
//make it fullscreen;
//now is everything is going to be rescaled so it looks like the original?
java
swing
fullscreen
Yoda
quelle
quelle
Antworten:
Hinzufügen:
quelle
frame.setUndecorated(true);
wird es wirklich Vollbild machen.DisplayMode.BIT_DEPTH_MULTI
undDisplayMode.REFRESH_RATE_UNKNOWN
anwenden. Ich musste nicht benutzensetExtendedState
. Getestet mit Kubuntu 15.10 mit Java 8.Exception in thread "main" java.awt.IllegalComponentStateException: The frame is displayable. at java.awt.Frame.setUndecorated(Frame.java:923)
Wenn Sie Ihren Frame in den Vollbildmodus versetzen möchten (wie einen Film im Vollbildmodus), überprüfen Sie diese Antworten.
Die Klassen
java.awt.GraphicsEnvironment
undjava.awt.GraphicsDevice
werden verwendet, um eine App auf einem Bildschirm (dem Dispositiv) in den Vollbildmodus zu versetzen.z.B:
quelle
Verwenden Sie
setExtendedState(int state)
, wo Zustand wäreJFrame.MAXIMIZED_BOTH
.quelle
Eine Möglichkeit besteht darin, den erweiterten Status zu verwenden. Dadurch wird das zugrunde liegende Betriebssystem aufgefordert, den JFrame zu maximieren.
Ein anderer Ansatz wäre, den Bildschirm manuell für Ihre Anforderungen zu maximieren.
Dies hat jedoch Fallstricke in Ubuntu OS. Die Arbeit, die ich fand, war diese.
In Fedora ist das obige Problem nicht vorhanden. Es gibt jedoch Komplikationen bei Gnome oder KDE . Also sei besser vorsichtig. Hoffe das hilft.
quelle
Einfachste Lösung aller Zeiten:
quelle
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
Ihrer Lösung?Verwenden Sie einfach diesen Code:
Ich hoffe das hilft.
quelle
Es wird Ihnen helfen, Ihr Objekt sofort im Rahmen zu verwenden
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
quelle
Zuallererst ist dies die Auflösung, die Sie verwenden möchten
1650,1080
.Fügen Sie nun hinzu:
Wenn Sie Probleme mit den Komponenten im JFrame haben
frame.add(component)
, fügen Sie die folgende Anweisung hinzu, nachdem Sie alle Komponenten mithilfe der Methode hinzugefügt haben .quelle
Dadurch hat der Rahmen nur die Größe des Bildschirms
quelle
Sie können das Eigenschaften-Tool verwenden. Legen
Sie 2 Eigenschaften für Ihren JFrame fest :
quelle
Sie brauchen nur das:
Wenn Sie den Modifikator MAXIMIZED_BOTH verwenden, wird er maximal über das Fenster verteilt (Höhe und Breite).
Es gibt einige, die dies vorschlagen:
Ich werde es nicht empfehlen, da Ihr Fenster keine Kopfzeile hat, also keine Schaltfläche zum Schließen / Wiederherstellen / Minimieren.
quelle
Hervorgehobene Werte, die ich meine:
quelle
Stellen Sie 2 Eigenschaften unten ein:
Für mich geht das.
quelle