Bonjour,
Je suis en train de m'initier au développement d'application graphique. Pour cela, je travaille avec les bibliothèques awt et Swing
Je suis en train de tester les différents gestionnaires de mise en page et différents composants graphiques. Actuellement, j'essaie de réaliser une petite fenetre avec 3 onglets à l'interieur (JTabbedPane).
Je sais que les différents gestionnaires de mises en page permettent de gerer l'emplacement des composants que j'insère dans des conteneurs (Jpanel).
Entre autre, le FlowLayout place les composant de gauche à droite, en commençant par le haut, et le BorderLayout comprend 5 zones : nord, sud, centre, ouest et est.
Ce que j'ai du mal à comprendre, c'est l'affichage différent de mon JTabbedPane, selon que je le place dans un FlowLayout ou dans un BorderLayout.
Dans le premier cas, il m'affiche juste les titres des onglets :
Dans le second cas, il m'affiche les titres des onglets et les cadres des onglets en dessous
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 public class InterfaceDemo extends JFrame{ private JPanel mainContainer = null; private FlowLayout mainLayout = null; private JTabbedPane tabOnglets = new JTabbedPane(); private JPanel onglet1 = new JPanel(); private JPanel onglet2 = new JPanel(); private JPanel onglet3 = new JPanel(); public InterfaceDemo(){ super("Gene2Pep : Démonstration"); this.setSize(600,150); this.setLocationRelativeTo(null); this.setResizable(false); this.setContentPane(getContainer()); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } private JPanel getContainer(){ mainContainer = new JPanel(); mainLayout = new FlowLayout(); mainLayout.setAlignment(FlowLayout.LEFT); mainContainer.setLayout(mainLayout); tabOnglets.addTab("Selection", onglet1); tabOnglets.addTab("Génération", onglet2); tabOnglets.addTab("Résultats", onglet3); mainContainer.add(tabOnglets); return mainContainer; } ...
Donc voila, si vous pouviez m'éclairer sur mon ignorance, ça serait gentil ^^
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 public class InterfaceDemo extends JFrame{ private JPanel mainContainer = null; private BorderLayout mainLayout = null; private JTabbedPane tabOnglets = new JTabbedPane(); private JPanel onglet1 = new JPanel(); private JPanel onglet2 = new JPanel(); private JPanel onglet3 = new JPanel(); public InterfaceDemo(){ super("Gene2Pep : Démonstration"); this.setSize(600,150); this.setLocationRelativeTo(null); this.setResizable(false); this.setContentPane(getContainer()); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } private JPanel getContainer(){ mainContainer = new JPanel(); mainLayout = new BorderLayout(); mainContainer.setLayout(mainLayout); tabOnglets.addTab("Selection", onglet1); tabOnglets.addTab("Génération", onglet2); tabOnglets.addTab("Résultats", onglet3); mainContainer.add(tabOnglets); return mainContainer; }
Pourquoi cet affichage différent selon le Layout manager utilisé ?
Partager