小编eni*_*niz的帖子

如何在JavaFX中使用SimpleIntegerProperty

我尝试填充tableView,我遵循了docs.oracle中给出的教程,但是在我的表中有Integer字段,所以我做同样的事情来添加它们。

信息类(如Person类)中的代码:

private SimpleIntegerProperty gel;

public int getGel() {
    return gel.get();
}

public void setGel(int pop) {
    gel.set(pop);
}
Run Code Online (Sandbox Code Playgroud)

Main该类中的代码:

TableColumn gel = new TableColumn("Gel");
gel.setMinWidth(100);
gel.setCellValueFactory(new PropertyValueFactory<Information, Integer>("gel"));
gel.setCellFactory(TextFieldTableCell.forTableColumn());

gel.setOnEditCommit(new EventHandler<CellEditEvent<Information, Integer>>() {
    
    @Override
    public void handle(CellEditEvent<Information, Integer> t) {
        ((Information) t.getTableView().getItems()
            .get(t.getTablePosition().getRow()))
            .setGel(t.getNewValue());
    }
});
Run Code Online (Sandbox Code Playgroud)

但我有错误:

Caused by: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
   at javafx.util.converter.DefaultStringConverter.toString(DefaultStringConverter.java:34)
   at javafx.scene.control.cell.CellUtils.getItemText(CellUtils.java:100)
   at javafx.scene.control.cell.CellUtils.updateItem(CellUtils.java:201)
   at javafx.scene.control.cell.TextFieldTableCell.updateItem(TextFieldTableCell.java:204)
Run Code Online (Sandbox Code Playgroud)

javafx tableview

2
推荐指数
1
解决办法
2196
查看次数

在TableView列中创建RadioButton

我在Oracle文档中遵循了关于TableView教程,我想做同样的事情,但是我想展示一个RadioButton,而不是显示TextField来修改项目.(我用RadionButton创建了TableView)

javafx tableview

0
推荐指数
1
解决办法
3758
查看次数

标签 统计

javafx ×2

tableview ×2