我希望我的JTable可以自动调整列宽以适应内容。我找到了
我尝试使用
TableColumnAdjuster
类很有用。但是有一个小问题。假设我有5列,它们的内容非常短。在这种情况下,如果我使用自动调整器,它会根据其内容设置前四列的宽度,并将所有剩余的空间都分配给最后一列。请参见示例。
Balance
占据了所有多余的空间。但是,如果我需要将该空间分配给中间的某一列怎么办?在上面的情况下,我需要将该空间分配给第三列name
。我尝试修改TableColumnAdjuster
类的adjustColumns()
方法。但是,我无法让它正常工作。我尝试使用
column.setPreferredWidth()
和column.setWidth()
来更改列大小。但似乎没有任何变化。如何有效地更改JTable
的列大小。如果有其他替代方案或直接回答我的主要问题,那就更好了。谢谢!
width = Math.max(width, table.getColumnModel().getColumn(column).getPreferredWidth());
以评估标题。 - SomeDude