可调整大小的列上的JavaFX TableColumn setPreferredWidth

时间:2017-05-04 07:03:40

标签: java javafx javafx-2

我有一个包含三列的表格,我想确保列的总宽度等于表格的宽度,所以我使用的是CONSTRAINED_RESIZE_POLICY。

我希望列以我指定的宽度开头,但可以由用户修改。

如果我这样做:

setResizable()

列的大小符合我的要求:

good

但如果我将true更改为column.setPreferredWidth ( 200 ),那么这些列的大小都会相同:

bad

有关如何解决此问题的任何建议?

简化将首选宽度设置为{{1}}之类的内容并没有任何区别。宽度始终在所有列之间平均分配。

有没有办法设置列的首选宽度(或实际宽度),同时还允许用户调整这些列的大小?

1 个答案:

答案 0 :(得分:1)

似乎CONSTRAINED_RESIZE_POLICY以列的最大宽度比率开头。以4:2:4的比例开始,

tableView.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
column1.setResizable(true);
column2.setResizable(true);
column3.setResizable(true);
column1.setMaxWidth(40000);
column2.setMaxWidth(20000);
column3.setMaxWidth(40000);

这种方法可以在需要无线电时解决问题。