【问题标题】:JavaFx 2 create TableView with single columnJavaFx 2 使用单列创建 TableView
【发布时间】:2012-06-17 12:06:08
【问题描述】:

我正在尝试使用以下代码创建一个包含单列的表:

TableView<String> table = new TableView<String>();
table.getColumns().clear();
table.getColumns().add(new TableColumn<String, String>("City Name"));
table.setItems(cityList);

但是我得到一个表格,其中“城市名称”列后跟一个空白列

我是 JavaFx 的新手,所以可能有更好的方法。

【问题讨论】:

    标签: java layout tableview javafx-2


    【解决方案1】:

    我记得在过去没有运气的情况下,我自己尝试通过使用 css 属性来“删除”空白列。解决方法是,
    - 手动设置cityColumn 的首选项宽度以覆盖整个空间:

    TableColumn<String, String> cityColumn = new TableColumn<String, String>("City Name");
    cityColumn.setPrefWidth(table.getPrefWidth() - 2);
    

    -2 用于边框宽度。您也可以直接将列宽属性绑定到表格宽度属性,从而在调整表格宽度时自动更新列宽。看到这个答案https://stackoverflow.com/a/10152992/682495
    或者,
    - 将列调整大小策略设置为CONSTRAINED_RESIZE_POLICY:

    table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
    

    【讨论】:

    • CONSTRAINED_RESIZE_POLICY 就是你所需要的
    • 最后选择了 CONSTRAINED_RESIZE_POLICY。
    猜你喜欢
    • 2012-08-28
    • 2015-03-04
    • 1970-01-01
    • 2013-06-28
    • 2017-11-24
    • 2012-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多