【问题标题】:How to make JavaFX TableView cells editable?如何使 JavaFX TableView 单元格可编辑?
【发布时间】:2013-10-20 12:58:27
【问题描述】:

有很多教程,还有很多建议可以通过扩展 JavaFX 单元格以使其可编辑来实现这一点。一个好的是this stackoverflow question
但是official tutorials 使用方法调用来创建回调,而无需编写所有代码,通过调用

lastNameCol.setCellFactory(TextFieldTableCell.forTableColumn());

但是,当我在代码中执行此操作时(FormTokens 是我的“模型”):

// At beginning of class declaration
@FXML private TableColumn<FormTokens, String> valuColumn;

// Later at initialization
valuColumn.setCellFactory(TextFieldTableCell.forTableColumn());

编译器说:

方法 设置细胞工厂( Callback&lt;TableColumn&lt;FormTokens,String&gt;,TableCell&lt;FormTokens,String&gt;&gt;)
类型为TableColumn&lt;FormTokens,String&gt;
不适用于参数
(Callback&lt;TableColumn&lt;Object,String&gt;,TableCell&lt;Object,String&gt;&gt;)

如果我删除上面提到的方法调用,除了 TableView 单元格不可编辑之外,一切正常。我做错了什么?

编辑:我刚刚发现:Javafx TableView can not be edited 但是没有解决方案。如何将Callback&lt;TableColumn&lt;Object,... 转换为Callback&lt;TableColumn&lt;FormTokens,...

【问题讨论】:

    标签: javafx-2 tableview


    【解决方案1】:

    为泛型参数明确指定确切的类型

    valuColumn.setCellFactory(TextFieldTableCell.<FormTokens>forTableColumn());
    

    【讨论】:

      猜你喜欢
      • 2014-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-01
      • 1970-01-01
      • 2016-09-24
      • 2014-03-26
      • 2015-03-31
      相关资源
      最近更新 更多