Jtable保留列宽

avi*_*ash 1 java swing jtable jtableheader preferredsize

我有一个Jtable,其中我使用setDataVector函数设置数据.它工作正常,但假设我只是通过使用鼠标拖动更改了一些列宽,然后在同一个表中加载新数据然后该列的宽度重置到它的默认位置.所以基本上我想保留那个宽度,即使新数据加载.

cam*_*ckr 6

当您使用setDataVector()方法时,表的结构可能会更改,因此表会自动重新创建TableColumnModel,您将失去自定义.

当您第一次使用以下代码创建JTable时:

JTable table = new JTable(...);
table.setAutoCreateColumnsFromModel( false );
Run Code Online (Sandbox Code Playgroud)

防止重新创建TableColumnModel.