L'un des moyens consiste à utiliser l'État étendu. Cela demande au système d'exploitation sous-jacent de maximiser le JFrame.
setExtendedState(getExtendedState() | JFrame.MAXIMIZED_BOTH);
Une autre approche serait de maximiser manuellement l'écran selon vos besoins.
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
setBounds(100, 100, (int) dim.getWidth(), (int) dim.getHeight());
setLocationRelativeTo(null);
Mais cela présente des écueils dans le système d'exploitation Ubuntu. La solution que j'ai trouvée est la suivante.
if (SystemHelper.isUnix()) {
getContentPane().setPreferredSize(
Toolkit.getDefaultToolkit().getScreenSize());
pack();
setResizable(false);
show();
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Point p = new Point(0, 0);
SwingUtilities.convertPointToScreen(p, getContentPane());
Point l = getLocation();
l.x -= p.x;
l.y -= p.y;
setLocation(p);
}
});
}
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
setBounds(100, 100, (int) dim.getWidth(), (int) dim.getHeight());
setLocationRelativeTo(null);
Dans Fedora, le problème ci-dessus n'existe pas. Mais il y a des complications liées à Gnome ou KDE . Il faut donc être prudent. J'espère que cela vous aidera.
0 votes
Vous devez définir "plein écran". En plus des réponses ci-dessous, vous pouvez considérer si le cadre doit être décoré ou non (c'est-à-dire inclure la barre de titre et les bordures). À moins que vous n'effectuiez une peinture personnalisée, le redimensionnement ne se produira pas. Si vous utilisez des composants Swing normaux et un gestionnaire de mise en page, vous devriez constater que la mise en page s'adapte à la nouvelle résolution de l'écran. Bien entendu, vous voudrez le tester ;)
0 votes
Voulez-vous utiliser Lion Fullscreen ?