en partant du code fourni dans la FAQ de java:
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?
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; }
merci
Partager