Insertion d'une JTable dans une JTable
Bonjour à tous,
Voilà je n'ai JAMAIS fait de JTable auparavant, et en lisant ce tuto, j'ai cru comprendre qu'il était possible d'insérer une JTable dans une JTable.
De ce fait j'ai essayé d'en créer une avec 2 colonnes et dans chacune des colonnes j'insère une JTable de 30x30.
Ca compile sans problème sauf que lorsque je démarre mon appli, dans lest cellules où devraient se trouver ma JTable se trouve un mesage d'erreur :
javax.swing.JTable[,0,0,0x0,invalid,alignmentX=0.0,alignmentY=0.0,border=,flags=251658568,maximumSize=,minimumSize=,preferredSize=,autoCreateColumnsFromModel=true,autoResizeMode=AUTO_RESIZE_SUBSEQUENT_COLUMNS,cellSelectionEnabled=false,editingColumn=-1,editingRow=-1,gridColor=javax.swing.plaf.ColorUIResource[r=122,g=138,b=153],preferredViewportSize=java.awt.Dimension[width=450,height=400],rowHeight=16,rowMargin=1,rowSelectionAllowed=true,selectionBackground=javax.swing.plaf.ColorUIResource[r=184,g=207,b=229],selectionForeground=sun.swing.PrintColorUIResource[r=51,g=51,b=51],showHorizontalLines=true,showVerticalLines=true]
Voici mon code :
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
|
// Initialise le nom des colonnes
initNomColonnes(); // Initialise des attributs privés de ma classe de type String []
// Déclaration et initialisation des composants SWING
JPanel panelPrincipal = new JPanel();
Object[][] data = new Object[30][4];
Object[][] data2 = new Object[30][30];
JTable tableDroite = new JTable(1,2);
JTable tableGauche = new JTable(data, nomColonnesGauche);
// nomColonnesXXXX sont les attributs privés de ma classe
JTable tableAT = new JTable(data2, nomColonnesAT);
JTable tableECH = new JTable(data2, nomColonnesECH);
tableDroite.setValueAt(tableAT, 0, 0);
tableDroite.setValueAt(tableECH, 0, 1);
// Ajout des composants SWING et des Layouts aux différents conteneurs
this.setLayout(new FlowLayout());
panelPrincipal.setLayout(new FlowLayout());
JScrollPane panelGauche = new JScrollPane(tableGauche);
JScrollPane panelDroite = new JScrollPane(tableDroite);
panelPrincipal.add(panelGauche);
panelPrincipal.add(panelDroite);
this.add(panelPrincipal); |
Merci beaucoup d'avance !