Bonjour, je voudrais faire ça :



dans un JPanel. Mais lorsque j'essaie cela me donne ça :



Voila mon code :

Interface :

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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
package dbInterface;
 
import java.awt.BorderLayout;
import java.awt.Container;
 
import javax.swing.JFrame;
import javax.swing.JTabbedPane;
import javax.swing.SwingConstants;
 
/**
 * Classe permettant de gerer la page principale
 * 
 */
public class InterfaceGraphique extends JFrame {
 
	private static final long serialVersionUID = 6542707608212501016L;
 
	/**
         * Le JTabbedPane permettant de mettre les onglets
         */
	JTabbedPane onglets;
 
	/**
         * Instance de la classe Traitement
         * Premier JPanel de la barre d'onglets
         */
	Traitement traitement;
 
	/**
         * Instance de la classe Selection
         * Deuxieme JPanel de la barre d'onglets
         */
	Selection selection;
 
	/**
         * Instance de la classe Requete
         * Troisieme JPanel de la barre d'onglets
         */
	Requete requete;
 
	/**
         * Constructeur de la classe InterfaceGraphique
         * 
         * Permet de construire la fenetre principale
         */
	public InterfaceGraphique() {
 
        // Définit un titre pour votre fenêtre
        this.setTitle("Gestionnaire Base de Données");
        // Définit une taille pour celle-ci
        this.setSize(900, 600);
        // Nous allons maintenant dire à notre objet de se positionner au centre
        this.setLocationRelativeTo(null);
        // Terminer le processus lorsqu'on clique sur "Fermer"
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
        // Construction d'un Traitement
    	traitement = new Traitement();
    	// Construction d'une Selection
    	selection = new Selection();
    	// Construction d'une Requete
    	requete = new Requete();
 
    	// Construction de la barre d'onglets
    	JTabbedPane onglets = new JTabbedPane(SwingConstants.TOP);
 
    	// Ajout du container a la fenetre principale
        Container c = this.getContentPane();
 
        // Mettre des marches de 10 et 10 au Container
        //c.setLayout(new BorderLayout(90,90));
 
        // Ajout de la barre d'onglets au Container
        c.add(onglets, BorderLayout.CENTER);
 
        // Ajout des trois JPanel a la barre d'onglet
        onglets.addTab("Traitement",traitement);
        onglets.addTab("Selection",selection);
        onglets.addTab("Requête",requete);
 
 
        //L'onglet par defaut est le premier (CAD traitement)
        onglets.setSelectedIndex(0);
 
 
	}
 
	public static void main(String[] args) {
 
		InterfaceGraphique fen = new InterfaceGraphique();
		fen.setVisible(true);
	}
}
JPanel Requete:

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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
package dbInterface;
 
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
 
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSpinner;
import javax.swing.JSplitPane;
import javax.swing.JTable;
import javax.swing.JTextArea;
import javax.swing.JToolBar;
import javax.swing.SpinnerModel;
import javax.swing.SpinnerNumberModel;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
 
/**
 * Classe permettant de gerer le JPanel Requete
 * 
 */
public class Requete extends JPanel {
 
	private static final long serialVersionUID = 2364784163288384577L;
 
	/**
         * ToolBar pour le lancement des requetes
         */
	private JToolBar toolbar;
 
	/**
         * Le bouton requete
         */
	private JButton boutonRequete;
 
	/**
         * Le bouton Saver
         */
	private JButton boutonSauvegarde;
 
	/**
         * Les deux boutons suivant et precedent
         */
	private JButton boutonPrecedent;
	private JButton boutonSuivant;
 
	/**
         * le Jspinner pour changer le nombre de donnees par page
         */
	private SpinnerModel modelSpinner;
	private JSpinner spinner;
 
	/**
         * Le delimiteur
         */
	private JSplitPane split;
	/**
         * Le conteneur de resultat
         */
	private JPanel result = new JPanel();
 
 
	/**
         * Le composant dans lequel taper la requête
         */
	private JTextArea text = new JTextArea("test");
 
 
	/**
         * Constructeur de la classe Requete
         * 
         * Permet de construire le JPanel Requete
         */
	public Requete() {
		super();
 
		toolbar = new JToolBar();
 
		boutonRequete = new JButton(new ImageIcon("img/load.png"));
 
		boutonSauvegarde = new JButton(new ImageIcon("img/saver.png"));
 
		boutonPrecedent = new JButton(new ImageIcon("img/precedent.png"));
 
		boutonSuivant = new JButton(new ImageIcon("img/suivant.png"));
 
		modelSpinner = new SpinnerNumberModel(10000, 10000,30000, 5000);
		spinner = new JSpinner(modelSpinner);
 
		initToolbar();
 
		result.setLayout(new BorderLayout());
		split = new JSplitPane(JSplitPane.VERTICAL_SPLIT, new JScrollPane(text), result);
		split.setDividerLocation(100);
		this.add(split, BorderLayout.CENTER);
 
		//On enlève le contenu de notre conteneur
		//result.removeAll();
		//On y ajoute un JTable
		result.add(new JScrollPane(new JTable()), BorderLayout.CENTER);
		result.add(new JLabel("La requête à été exécutée"), BorderLayout.SOUTH);
		//On force la mise à jour de l'affichage
		result.revalidate();
 
	}
 
	/**
         * Initialise la toolbar
         */
	private void initToolbar() {
 
		boutonRequete.setPreferredSize(new Dimension(30, 35));
		boutonRequete.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent event) {
				//
			}
		});
 
		boutonSauvegarde.setPreferredSize(new Dimension(30, 35));
		boutonSauvegarde.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent event) {
				//
			}
		});
 
		boutonPrecedent.setPreferredSize(new Dimension(30, 35));
		boutonPrecedent.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent event) {
				//
			}
		});
 
		boutonSuivant.setPreferredSize(new Dimension(30, 35));
		boutonSuivant.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent event) {
				//
			}
		});
 
		spinner.setMaximumSize(new Dimension(75, 30));
		spinner.addChangeListener(new ChangeListener() {
			public void stateChanged(ChangeEvent e) {
				// tailleResult = (Integer) spinner.getValue();
			}
		});
 
		toolbar.add(boutonRequete);
		toolbar.add(boutonPrecedent);
		toolbar.add(boutonSuivant);
		toolbar.add(boutonSauvegarde);
		toolbar.add(spinner);
 
		this.add(toolbar, BorderLayout.NORTH);
 
	}
 
}