Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在TableView中忽略负值和零值?_Java_Javafx - Fatal编程技术网

Java 如何在TableView中忽略负值和零值?

Java 如何在TableView中忽略负值和零值?,java,javafx,Java,Javafx,我有以下代码: costCol_.setCellValueFactory(cellData -> new SimpleIntegerProperty(cellData.getValue().getCost())); table_.getItems().addAll(SomeEnumType.values()); @FXML private TableView<SomeEnumType> table_; @FXML private TableColumn<7, Num

我有以下代码:

costCol_.setCellValueFactory(cellData -> new SimpleIntegerProperty(cellData.getValue().getCost()));
table_.getItems().addAll(SomeEnumType.values());



@FXML
private TableView<SomeEnumType> table_;
@FXML
private TableColumn<7, Number> costCol_;
costCol.setCellValueFactory(cellData->new SimpleIntegerProperty(cellData.getValue().getCost());
表2.getItems().addAll(SomeEnumType.values());
@FXML
私有表视图表;
@FXML
私有表列成本;
costCol中的某些值可以是0/-1,并且当前(从
SomeEnumType.getCost()
)显示为0或-1。 我不希望将它们显示为0,而希望显示为空单元格。可能吗? 我已经检查了SimpleIntegerBase,据我所知,返回的值来自
get()
方法,该方法返回
int

是否可以在不将类型转换为
字符串的情况下执行此操作

提前感谢。

使用单元格工厂(除现有单元格值工厂外)更改值的显示方式:

costCol.setCellFactory(tc -> new TableCell<SomeEnumType, Number>() {
    @Override
    protected void updateItem(Number item, boolean empty) {
        super.updateItem(item, empty) ;
        if (empty) {
            setText(null);
        } else {
            int value = item.intValue();
            if (value <= 0) {
                setText("");
            } else {
                setText(Integer.toString(value));
            }
        }
    }
});
costCol.setCellFactory(tc->new TableCell(){
@凌驾
受保护的void updateItem(数字项,布尔值为空){
super.updateItem(项,空);
if(空){
setText(空);
}否则{
int value=item.intValue();

if(value)
SomeEnumType
怎么可能是负数,或者,负数是什么意思?SomeEnumType有一个getCost()方法,返回一个int。这是我关心的问题,如果我不清楚这个问题,很抱歉。