我正在尝试将JTable放入JTable中。一切正常,我可以获得所有轨道信息,并成功地将其放入模型和insideTable中,唯一的问题是我无法渲染它。
甚至尝试将insideTable前景色设置为红色,但仍然看不到任何变化
table.setDefaultRenderer(List.class, new DefaultTableCellRenderer(){
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
String[] columns = {"Name","Duration","Location"};
List<Track> tracks = (ArrayList<Track>) value;
DefaultTableModel model = new DefaultTableModel(columns,0);
JTable insideTable = new JTable(model);
for(Track t: tracks){
String[] r = {t.getName(),t.getDuration(),t.getLocation()};
model.addRow(r);
}
model.fireTableDataChanged();
insideTable.setVisible(true);
return insideTable;
}
});
这就是它的外观。
这个使用默认渲染。
郎朗坤
相关分类