[Java] JFrame setResizable & setExtendedState
Résolu
zzzer
Messages postés
938
Statut
Membre
-
zzzer Messages postés 938 Statut Membre -
zzzer Messages postés 938 Statut Membre -
Bonjour,
Je voudrais créer une fenêtre à la fois non redimensionnable et de taille maximum.
J'ai donc essayé setResizable(false) et setExtendedState(JFrame.MAXIMIZED_BOTH) mais il semblerait que ces deux fonctions soient incompatibles.
Quelqu'un aurait une solution alternative ?
Je cherche notamment une façon d'avoir la taille de l'espace d'écran disponible pour les fenêtres (donc barre des tâches exclue) pour appliquer setSize() en combinaison avec setResizable().
Merci d'avance!
Je voudrais créer une fenêtre à la fois non redimensionnable et de taille maximum.
J'ai donc essayé setResizable(false) et setExtendedState(JFrame.MAXIMIZED_BOTH) mais il semblerait que ces deux fonctions soient incompatibles.
Quelqu'un aurait une solution alternative ?
Je cherche notamment une façon d'avoir la taille de l'espace d'écran disponible pour les fenêtres (donc barre des tâches exclue) pour appliquer setSize() en combinaison avec setResizable().
Merci d'avance!
A voir également:
- Setresizable java
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
1 réponse
Problème résolu grâce à uhrand sur developpez.net :
Il faut s'assurer que setResizable(false) soit exécuté APRES setExtendedState(JFrame.MAXIMIZED_BOTH) et APRES que la fenêtre soit visible.
Pour les affichages Swing en général, il faut savoir également que l'on doit toujours utiliser le thread dédié à l'affichage graphique (EventDispatchThread) de Swing (SwingUtilities.isEventDispatchThread() doit retourner "true"). Le mécanisme qui nous permet la synchronisation se cache derrière l'instruction SwingUtilities.invokeLater(Runnable). Elle nous permet de mettre en file d'attente une action à effectuer dans le thread dédié à l'affichage graphique.
Il faut s'assurer que setResizable(false) soit exécuté APRES setExtendedState(JFrame.MAXIMIZED_BOTH) et APRES que la fenêtre soit visible.
Pour les affichages Swing en général, il faut savoir également que l'on doit toujours utiliser le thread dédié à l'affichage graphique (EventDispatchThread) de Swing (SwingUtilities.isEventDispatchThread() doit retourner "true"). Le mécanisme qui nous permet la synchronisation se cache derrière l'instruction SwingUtilities.invokeLater(Runnable). Elle nous permet de mettre en file d'attente une action à effectuer dans le thread dédié à l'affichage graphique.