使用默认表模型时调整JTable的大小

时间:2013-04-09 22:23:20

标签: java swing jtable defaulttablemodel preferredsize

我有一个使用DefaultModel构建的JTable,它显示在JPane中,但我想重新调整表的大小以使其更大。任何人都可以解释我怎么做到这一点?我尝试了以下代码:

TableColumnModel colsize = t1.getColumnModel();

for(int i=0; i<cols; i++){

    colsize.getColumn(i).setPreferredWidth(200);
}

但它不起作用。

2 个答案:

答案 0 :(得分:4)

调整 table#setPreferredSize().

的大小
table.setPreferredSize(new Dimension(500, 500));

调整列table#getColumn().

的大小
table.getColumn(columnNames[0]).setPreferredWidth(100);
table.getColumn(columnNames[1]).setPreferredWidth(400);

我希望这有助于解决您的问题。如果你在实现这个问题时遇到任何问题,那就问一下。

答案 1 :(得分:3)

使用setPreferredSize()problematic。由于JTable实施Scrollable,覆盖getPreferredScrollableViewportSize()以返回getRowHeight()的倍数可能是更好的方法。