Bonjour,

le GridBagLayout me rend fou ! pourriez vous éclairer ma lanterne. Je souhaite créer un panel avec deux onglets, et dans l'espace à coté des onglets je souhaite mettre une JScrollBar. Pour être plus clair voici une capture d'écran :



Voici mon code :
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
package test;
 
import java.awt.Container;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
 
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollBar;
import javax.swing.JTabbedPane;
 
public class TestTab {
 
	/**
         * @param args
         */
	public static void main(String[] args) {
 
		JFrame jf = new JFrame();
		jf.setTitle("Test Projet");
		jf.setSize(640, 480);
		jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		jf.getContentPane().setLayout(new GridBagLayout());
 
		GridBagConstraints gbcTab = new GridBagConstraints();
		GridBagConstraints gbcScroll = new GridBagConstraints();
 
		gbcTab.gridwidth = 200;
		gbcTab.gridheight = 0;
		gbcTab.insets = new Insets(0,0,0,0);
		gbcTab.anchor = GridBagConstraints.NORTHWEST;
		gbcTab.fill = GridBagConstraints.NONE;
		gbcTab.weightx = 0;
		gbcTab.weighty = 0;
		gbcTab.ipadx = 100;
		gbcTab.ipady = 100;
 
		gbcScroll.gridwidth = 200;
		gbcScroll.gridheight = 400;
		gbcScroll.insets = new Insets(0, 0, 0, 0);
		gbcScroll.anchor = GridBagConstraints.SOUTHWEST;
		gbcScroll.fill = GridBagConstraints.HORIZONTAL;
		gbcScroll.weightx = 100;
		gbcScroll.weighty = 0;
		gbcScroll.ipadx = 100;
		gbcScroll.ipady = 0;
 
		JPanel collections = new JPanel();
		addButtons(2, collections);
		JPanel map = new JPanel();
		addButtons(2, map);
 
		JTabbedPane tab = new JTabbedPane(JTabbedPane.BOTTOM,
				JTabbedPane.SCROLL_TAB_LAYOUT);
		tab.addTab("Collections", collections);
		tab.addTab("Map", map);
		// jf.getContentPane().add(tab);
 
		JScrollBar jb = new JScrollBar();
		jb.setOrientation(JScrollBar.HORIZONTAL);
		// jf.getContentPane().add(jb);
 
		jf.getContentPane().add(tab, gbcTab);
		jf.getContentPane().add(jb, gbcScroll);
 
		jf.setVisible(true);
	}
 
	public static void addButtons(int n, Container c) {
 
		for (int i = 1; i <= n; i++) {
			JButton jb = new JButton("Button" + i);
			c.add(jb);
		}
	}
}
Merci pour votre aide.