JavaFX TableView索引访问或固定表

时间:2014-08-27 09:22:20

标签: javafx tableview

我的应用程序中有一个TableView,以标准方式使用CellValueFactory和ObservableList。

然而,这对我来说还不够,我解释原因: 第一列a希望拥有永久保留的固定值。从课程

填写三列
public class ValuesTriplet {

    private StringProperty L1 = new SimpleStringProperty();
    private StringProperty L2 = new SimpleStringProperty();
    private StringProperty L3 = new SimpleStringProperty();

    ...
    // constructor
    // properties setters/getters
}

(这个中间部分我有工作。)
一个(最后一个)字符串列如下。

我的问题是我正在通过以下方式从设备读取数据:
1)读取三元组并填充到表(工作部分) - 这也确定行号
2)读取最后一列的单个值 - 但只有一些行具有它们(!)。如何在没有add()方法的情况下写入现有表? 3)转到1

或者我可以为每个部分提供单细胞工厂吗?

如果有任何不清楚的地方请询问。谢谢。

1 个答案:

答案 0 :(得分:0)

一个独立的测试案例可能会让我们更容易理解您的问题。

这只是一个视图更新问题吗?并且未能更新的属性是从Observable和部分可观察列表派生的,并通过PropertyValueFactory注册为列?如果没有,那么TableView将不会自动知道您的模型已更改。您可以通过这种方式强制更新:

    public void updateData() {
        if (tableView.getColumns().size()==0)
            return;
        tableView.getColumns().get(0).setVisible(false);
        tableView.getColumns().get(0).setVisible(true);
    }

我在javafx迁移中遇到了这个问题,我必须使用带有JavaFx表视图的swing表模型。当然,视图不会自动通知模型的更改。更新模型后调用上面的代码为我更新表。