Comment programmer un mode plein écran en Java?

J’aimerais que mon application ait un mode plein écran. Quelle est la façon la plus simple de faire cela, ai-je besoin d’une bibliothèque tierce pour cela ou y a-t-il quelque chose dans le JDK qui offre déjà cela?

Essayez l’ API en mode exclusif plein écran . Il a été introduit dans le JDK dans la version 1.4. Certaines des fonctionnalités comprennent:

  • Mode exclusif plein écran – permet de suspendre le système de fenêtrage afin que le dessin puisse être fait directement à l’écran.
  • Mode d’affichage : composé de la taille (largeur et hauteur du moniteur, en pixels), de la profondeur de bits (nombre de bits par pixel) et de la fréquence de rafraîchissement (fréquence à laquelle le moniteur se met à jour).
  • Rendu passif ou actif : le fait de peindre dans la boucle d’événements principale à l’aide de la méthode de peinture est passif, alors que le rendu dans votre propre fil est actif.
  • Double tamponnage et retournement de page – Un dessin plus fluide signifie une meilleure perception de la performance et une expérience utilisateur bien meilleure.
  • BufferStrategy et BufferCapabilities – classes qui vous permettent de dessiner des surfaces et des composants sans avoir à connaître le nombre de tampons utilisés ou la technique utilisée pour les afficher, et vous aident à déterminer les fonctionnalités de votre périphérique graphique.

Il existe plusieurs exemples de mode exclusif plein écran dans le tutoriel lié.

J’ai fait cela en utilisant JOGL avec une interface utilisateur OpenGL en plein écran pour un jeu. C’est assez facile. Je pense que la fonctionnalité a également été ajoutée à Java avec la version 5, mais il y a si longtemps que j’ai oublié comment le faire (edit: voir la réponse ci-dessus pour savoir comment).

Méthode JFrame setUndecorated(true)

Utilisez ce code:

 JFrame frame = new JFrame(); // set properties frame.setSize(Toolkit.getDefaultToolkit().getScreenSize()); frame.setUndecorated(true); frame.setVisible(true); 

Assurez-vous que setUndecorated() précède setVisible() cela ne fonctionnera pas.

Cela dépend vraiment de ce que vous utilisez pour afficher votre interface, à savoir AWT / Spring ou OpenGL, etc.

Java dispose d’une API en mode exclusif en mode plein écran. Consultez ce tutoriel de Sun.