Comprendre la différence entre setPreferredSize() et setSize() dans les composants Java
Dans Java Swing, setSize() et setPreferredSize() Les méthodes jouent toutes deux un rôle crucial dans le contrôle de la taille des composants. Cependant, il existe une différence subtile entre leurs fonctionnalités.
setSize() vs setPreferredSize()
Quand Utiliser chaque méthode
Le choix entre l'utilisation de setSize() ou setPreferredSize() dépend de la disposition parent du composant manager.
Pourquoi setPreferredSize() est préféré pour les gestionnaires de mise en page
Les gestionnaires de mise en page utilisent la taille préférée pour déterminer la taille du composant. taille finale. En définissant la taille préférée, vous autorisez le gestionnaire de mise en page à positionner et à dimensionner le composant de manière appropriée dans l'espace dont il dispose.
Par exemple, supposons que vous ayez un JPanel avec un BorderLayout et deux boutons. En définissant la taille préférée des boutons, BorderLayout les organisera automatiquement avec l'espacement et l'alignement corrects.
Quand utiliser setSize()
setSize() est nécessaire uniquement lorsque le parent ne dispose pas d'un gestionnaire de mise en page. C'est généralement le cas pour les composants de niveau supérieur tels que les JFrames et les composants placés dans des volets défilants.
Exemple
Pour un JFrame avec un BorderLayout, utilisez le code suivant pour définir la taille préférée d'un bouton :
JButton button = new JButton("Button"); button.setPreferredSize(new Dimension(100, 30)); frame.getContentPane().add(button, BorderLayout.CENTER);
Si vous souhaitez définir la taille exacte du JFrame lui-même, utilisez setSize() à la place :
frame.setSize(new Dimension(500, 300));
Conclusion
理解 setSize() et setPreferredSize() Applications Java组件的大小,无论是使用还是不使用布局管理器。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!