K
keineahnunghat
Gast
Guten Tag,
Ich habe über den GUI-Builder von NetBeans 6.8 ein Frame erstellt. Dieses beinhaltet ein JTabbedPane mit 4 Panels. 3 Davon haben den identischen Inhalt. Ein JTable in einem JScrollPane und einen JButton.
Ich tausche in dem Programm regelmäßig das TableModel der JTables aus. Es wird der selbe Code zum ändern des Models für alle Tabellen verwendet.
Bei Tabelle 1 und 2 klappt es ohne Probleme. Bei Tabelle 3 wird das gesamte Panel größer und wird am rechten rand abgeschnitten (bei allen 4 Panels des JTabbedPane).
Hoffe das reicht an Informationen. Ich werde auch einmal versuchen ein paar Screenshots hoch zu laden damit man sich besser vorstellen kann was genau passiert.
Ich habe über den GUI-Builder von NetBeans 6.8 ein Frame erstellt. Dieses beinhaltet ein JTabbedPane mit 4 Panels. 3 Davon haben den identischen Inhalt. Ein JTable in einem JScrollPane und einen JButton.
Ich tausche in dem Programm regelmäßig das TableModel der JTables aus. Es wird der selbe Code zum ändern des Models für alle Tabellen verwendet.
Java:
public void setTableContent(int table, Object[][] content) {
JTable target = this.jTable3;
if (target == 1) t = this.jTable2;
if (target == 2) t = this.jTable1;
if (target == 3) t = this.jTable4;
target.setModel(new javax.swing.table.DefaultTableModel(
content,
new String [] {
"MMSI", "IMO", "NAME", "IRCS", "FLAG"
}
) {
Class[] types = new Class [] {
java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class
};
boolean[] canEdit = new boolean [] {
false, false, false, false, false
};
public Class getColumnClass(int columnIndex) {
return types [columnIndex];
}
public boolean isCellEditable(int rowIndex, int columnIndex) {
return canEdit [columnIndex];
}
});
target.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
target.getColumnModel().getColumn(0).setResizable(false);
target.getColumnModel().getColumn(0).setPreferredWidth(80);
target.getColumnModel().getColumn(0).setMinWidth(80);
target.getColumnModel().getColumn(0).setMaxWidth(80);
target.getColumnModel().getColumn(1).setResizable(false);
target.getColumnModel().getColumn(1).setPreferredWidth(65);
target.getColumnModel().getColumn(1).setMinWidth(65);
target.getColumnModel().getColumn(1).setMaxWidth(65);
target.getColumnModel().getColumn(2).setResizable(false);
target.getColumnModel().getColumn(2).setPreferredWidth(323);
target.getColumnModel().getColumn(2).setMinWidth(323);
target.getColumnModel().getColumn(2).setMaxWidth(323);
target.getColumnModel().getColumn(3).setResizable(false);
target.getColumnModel().getColumn(3).setPreferredWidth(70);
target.getColumnModel().getColumn(3).setMinWidth(70);
target.getColumnModel().getColumn(3).setMaxWidth(70);
target.getColumnModel().getColumn(4).setResizable(false);
target.getColumnModel().getColumn(4).setPreferredWidth(35);
target.getColumnModel().getColumn(4).setMinWidth(35);
target.getColumnModel().getColumn(4).setMaxWidth(35);
target.getTableHeader().addMouseListener(this);
target.addMouseListener(this);
this.validate();
}
Bei Tabelle 1 und 2 klappt es ohne Probleme. Bei Tabelle 3 wird das gesamte Panel größer und wird am rechten rand abgeschnitten (bei allen 4 Panels des JTabbedPane).
Hoffe das reicht an Informationen. Ich werde auch einmal versuchen ein paar Screenshots hoch zu laden damit man sich besser vorstellen kann was genau passiert.