Witam.
Mam sobie okno, w oknie 3 panele, w lewym panelu liste z magazynami, w srodkowym panelu chce miec tabele z materialami w tym magazynie, ktory wybiore z listy.. robie to tak:
Java:
private void OnSelect(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
//jTable1.validate();
jPanel5.removeAll();
String Stemp = jList1.getSelectedValue().toString();
modelpkg.magazine Mtemp = Inner.FindMagazine(Stemp);
ArrayList ListTemp = Mtemp.getStoredArticles();
DefaultTableModel DTable = new DefaultTableModel(ListTemp.size(),4);
Iterator it = ListTemp.iterator();
int i = 0;
while(it.hasNext()){
modelpkg.stored_article SAtemp = (modelpkg.stored_article) it.next();
String ID = new Integer(SAtemp.getId()).toString();
String Nazwa = SAtemp.getName();
String Pojemnosc = new Double(SAtemp.getCapacity()).toString();
String Ilosc = new Double(SAtemp.getActual()).toString();
DTable.setValueAt(ID,i, 0);
DTable.setValueAt(Nazwa, i, 1);
DTable.setValueAt(Pojemnosc, i ,2);
DTable.setValueAt(Ilosc, i, 3);
i++;
}
Vector Vec = DTable.getDataVector();
Object ob[][] = new Object[Vec.size()][4];
for(int tmp = 0; tmp < Vec.size(); tmp++){
Vector Vec2 = (Vector)Vec.get(tmp);
ob[tmp][0]= (String)Vec2.get(0);
ob[tmp][1] = (String)Vec2.get(1);
ob[tmp][2] = (String)Vec2.get(2);
ob[tmp][3] = (String)Vec2.get(3);
}
String ColNames[] = {"ID", "Nazwa", "Pojemno??", "Ilo??"};
jTable1 = new JTable(ob,ColNames);
jPanel5.add(jScrollPane2);
jPanel5.add(jTable1);
jTable1.setVisible(true);
jScrollPane2.setVisible(true);
jTable1.validate();
jPanel5.validate();
}
Troche zawikłane, ale według tego, co w sieci czytałem, to powinno działać, a mimo to nie wyświetla mi tablicy (nawet pustej) w środkowym panelu.
Widzi ktoś błąd??
Pozdrawiam.