Pourquoi le centrage dans JFrame ne fonctionne pas?
Résolu/Fermé
Pulsar360
Messages postés
113
Date d'inscription
lundi 12 novembre 2012
Statut
Membre
Dernière intervention
29 août 2018
-
Modifié par Pulsar360 le 6/05/2013 à 15:53
Pulsar360 Messages postés 113 Date d'inscription lundi 12 novembre 2012 Statut Membre Dernière intervention 29 août 2018 - 6 mai 2013 à 16:31
Pulsar360 Messages postés 113 Date d'inscription lundi 12 novembre 2012 Statut Membre Dernière intervention 29 août 2018 - 6 mai 2013 à 16:31
1 réponse
Pulsar360
Messages postés
113
Date d'inscription
lundi 12 novembre 2012
Statut
Membre
Dernière intervention
29 août 2018
10
6 mai 2013 à 16:31
6 mai 2013 à 16:31
Pour ceux que ça intéresse en réalité j'ai bien une fenêtre de 600 x 600 mais dans la quel sont ajouter les bordures et le titre donc au final il n'y à que 584 x 562 de pixel util.
La solution :
Utiliser setPreferredSize
Et la nous avons bien 600x600 de pixel utile pour une fenêtre qui au final fait 638 x 616 ( et oui y'a les bordures en plus).
La solution :
Utiliser setPreferredSize
import java.awt.Color; import java.awt.Dimension; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class TestCentrage { public static void main(String[] args) { JFrame fen = new JFrame(); Pan pan = new Pan(); int hauteur = 600; int largeur = 600; fen.setTitle("Test le Centrage"); pan.setPreferredSize(new Dimension(600,600)); fen.add(pan); fen.pack(); fen.setVisible(true); fen.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); fen.setContentPane(pan); } } class Pan extends JPanel { public void paintComponent (Graphics g) { g.setColor(Color.black); g.fillRect((600/2)-(500/2), (600/2)-(500/2), 500,500); System.out.println("Largeur = " + getWidth() + " Hauteur = " + getHeight()); } }
Et la nous avons bien 600x600 de pixel utile pour une fenêtre qui au final fait 638 x 616 ( et oui y'a les bordures en plus).