en partant du code fourni dans la FAQ de java:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 
class BorderLayoutFrame extends JFrame
{
    public BorderLayoutFrame ()
    {
        setTitle("BorderLayout Test");
        setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
 
        Container c = getContentPane();
 
        // ------------ par défaut pour le JFrame ------------
        // setLayout(new BorderLayout());
 
        c.add(makeLabel("  NORD  "),BorderLayout.NORTH);
        c.add(makeLabel("  SUD  "),BorderLayout.SOUTH);   
        c.add(makeLabel("  EST  "),BorderLayout.EAST);
        c.add(makeLabel("  OUEST  "),BorderLayout.WEST);
        c.add(makeLabel("  CENTRE  "),BorderLayout.CENTER);       
 
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
 
    private JLabel makeLabel(String text)
    {
        JLabel label = new JLabel(text,JLabel.CENTER);
        Border borderLine = BorderFactory.createLineBorder(Color.BLACK);
        label.setBorder(borderLine);
        return label;
    }
 
    static final int DEFAULT_WIDTH = 200;
    static final int DEFAULT_HEIGHT = 150;
}
Comment modifier le code afin que chaque label par exemple ait une dimension precise tout en restant dans ce layout? il n'y a pas un risque de debordement si les dimensions fournies depassent celles de la fenetre principale?

merci