繁体   English   中英

使用JavaFX的TableView中没有0的整数值

[英]No Integer value of 0 in TableView using JavaFX

我在JavaFX中使用TableView有问题。 我有3个带有整数的列。 从一开始,这些单元格的默认值就应该为空(JavaFX使用“ 0”而不是什么)。 我的问题:如何显示“”(什么都没有)而不是“ 0”。 我已经准备好使用setCellFactory来使我的表可编辑。 这里的代码:

_points1 = new TableColumn<Row, Integer>("Spieler 1");
    _points1.setCellValueFactory(new PropertyValueFactory<Row, Integer>("_valuePlayer1"));
    _points1.setCellFactory(TextFieldTableCell.forTableColumn(new IntegerStringConverter()));
    _points2 = new TableColumn<Row, Integer>("Spieler 2");
    _points2.setCellValueFactory(new PropertyValueFactory<Row, Integer>("_valuePlayer2"));
    _points2.setCellFactory(TextFieldTableCell.forTableColumn(new IntegerStringConverter()));
    _points3 = new TableColumn<Row, Integer>("Spieler 3");
    _points3.setCellValueFactory(new PropertyValueFactory<Row, Integer>("_valuePlayer3"));
    _points3.setCellFactory(TextFieldTableCell.forTableColumn(new IntegerStringConverter()));

问题不在于您的cellFactory / cellValueFactory ,而是您的Row类。 您正在使用IntegerProperty 这些属性不允许使用null值。 如果尝试使用IntegerProperty.setValuenull设置为值,则该值将自动替换为0 这导致您观察到的行为。

要允许null值,您需要使用ObjectProperty<Integer>而不是IntegerProperty

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM