Ajouter JScrollPane dans une JPanel contetnat des JPanels + GridLayout
Bonjour,
J'ai cette interface pour créer. J'ai un problème avec le JScrollPane:
http://i.imgur.com/gJ6GU.png
J'ai déclaré un JPanel avec un GridLayout (8,1,0,2),c'est une panel avec 8 lignes et une seule colonne.
Je veux ajouter dans cette colonne 8 panels rectangulaires(Une ligne est un JPanel aussi) et si le nombre dépasse 8 une scrollepane s'affiche.
Là si le nombre de lignes dépasse 8, la scrollpane ne s'affiche pas mais je reçois deux colonnes ... J'ai ajouté un JScrollPane, mais il ne veut pas apparaître .
Comment puis-je faire?
http://i.imgur.com/0sERK.png
Code:
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
|
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import java.awt.GridLayout;
import javax.swing.JScrollPane;
public class example extends JFrame {
private JPanel contentPane;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
example frame = new example();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public example() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 387);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(32, 22, 358, 266);
contentPane.add(scrollPane);
JPanel panel = new JPanel();
scrollPane.setViewportView(panel);
panel.setLayout(new GridLayout(8, 1, 0, 2));
for(int i=0; i<8; i++)
{
JPanel panel_1 = new JPanel();
panel_1.setBackground(Color.ORANGE);
panel.add(panel_1);
}
} |
Merci d'avance.
Cordialement,
Ali