jframe code> avec le bouton masqué ou non maximisé, mais doit être capable de réapparaître à l'aide de la souris (cliquer et glisser sur
jframe code> frontière).
SETRESISABLE (FALSE) CODE> Ne désactive que le bouton Minimize mais pas en mesure de réapparaître à l'aide de la souris. P>
3 Réponses :
Une option peut être d'utiliser un jDialog code> au lieu d'un
jframe code>. Cela permet à la fenêtre d'être redimensionnable manuellement mais pas maximisable. Le seul problème avec cela est que vous perdez à la fois les boutons minimisez et maximisez. Cela peut ou non être un problème pour votre application. P>
Désolé, j'ai aussi besoin de minimiser la fenêtre.
Personnellement, je ne peux pas penser à une raison d'autoriser le redimensionnement et ne pas permettre de maximiser, mais voici un exemple de la manière d'éviter de maximiser un JFRAME tout en permettant de redimensionner et de minimiser. Testé sous Windows, non testé sur toutes les autres plates-formes. Flash en plein écran est minimisé à l'aide de SetMaxImizedbounds ().
final JFrame jFrameNoMax = new JFrame() { { setMaximizedBounds(new Rectangle(0, 0)); addWindowStateListener(new WindowStateListener() { public void windowStateChanged(final WindowEvent e) { if (e.getNewState() == MAXIMIZED_BOTH) { setExtendedState(NORMAL); } } }); } }; // Tester jFrameNoMax.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); jFrameNoMax.setSize(300, 300); jFrameNoMax.setLocation(300, 300); jFrameNoMax.setVisible(true);
Son ok sous Windows et désolé de le dire peut être maximisé dans Mac
À moins que vous n'écris votre propre délégué de l'interface utilisateur de fenêtre, cela n'est pas possible dans Java natif
Voir Cette réponse similaire