我想从我的TableCell中的模型中获取一个属性,因此我可以根据该属性对单元格进行修改,让我们看一下以下示例:
我有这样一个模型:
public class Model {
private CustomProperty<Integer> appleCount;
private CustomProperty<Integer> peachCount;
public Model(Integer appleCount, Integer peachCount) {
this.appleCount = new CustomIntegerProperty(appleCount);
this.peachCount = new CustomIntegerProperty(peachCount);
}
public CustomProperty<Integer> appleCountProperty() {
return appleCount;
}
public CustomProperty<Integer> peachCountProperty() {
return peachCount;
}
}
这个模型只是我所拥有的模型的一个模拟,我有几个模型有两个或更多的CustomProperty
然后,我有一些表具有这个模型,或者类似于TableView模型的类。我有一个覆盖了updateItem的自定义表格单元格,我想根据CustomProperty的属性设置单元格的文本,例如initialValue、oldValue等。例如,如果initialValue为0,则将文本设置为空,而不是默认情况下包含单元格的0。我有一个部分解决方案:创建一个HasCustomProperty接口,然后模型将实现它,但还有一些问题:
我需要向接口添加两个CustomProperties或它们的列表
- 我需要在牢房里问:你是苹果伯爵?还是桃子细胞?
可以肯定的是,在一个单元格中只有一个属性,苹果或桃子,因此从理论上讲,如果我知道这两个属性都是CustomIntegerProperty,那么我就不应该关心单元格中的属性,因为我知道它们都有初始值或旧值,所以我可以根据它设置单元格的文本。
我只能获取项目,这是一种整数,所以我没有它的属性,或者有什么方法可以获取属性本身?
解决方案可以是在每个列的cellFactory中重写updateItem,例如,我知道这是appleColumn,所以从appleCountProperty获取信息,等等,但是如果我必须在5-6个位置执行,这会导致大量重复代码。所以我想我制作了一个定制的TableCell,在那里我管理文本,然后我只需为每个列设置该单元格,用于
cellFactory()
。
你知道我如何在没有重复代码的情况下做到简单吗?
根据我们的讨论-我认为您面临的问题是确定用户集0和IntgerProperty的初始化0之间的区别。
与其使用使用int且不能为空的IntgerProperty,不如在模型中使用以下内容:
private ObjectProperty<Integer> appleCountProperty = new SimpleObjectProperty<>();
然后在表中绑定到它:
@FXML
TableColumn<Model, Integer> appleCountColumn;
//在初始化中
appleCountColumn.setCellValueFactory(data -> data.getValue().appleCountProperty ());
这应该会给你你需要的。
我有一个包含如下值的对象 这些都在变量autossuggest中。现在我只想获得值 谢谢你的小费
问题内容: 我如何从javafx image / imageview类获取byte []?我想将图像作为Blob存储到数据库中。这是我使用的方法 有没有一种方法可以将当前对象(图像视图,图像)转换为byte [] ?,还是应该开始考虑对图像使用其他类/或者指向带有引用的位置并使用路径/ URL? 问题答案: 试试这个: 应该根据徽标类别工作 您需要在写入和读取时指定一种格式,据我所知,不支持bmp
我试图从Woocommerce的Wordpress网站上获取产品数据。我使用下面的代码获取特定类别产品的名称和缩略图。 这在获取“工具”类别中产品的名称和图像方面效果很好,但我想获取每个产品的权重。 产品重量在WordPress仪表板中设置为产品属性。 如何获取产品的这些数据?我似乎找不到访问这些的功能。
我有一个java代码可以将这些值追加到我的属性文件中 我的属性文件将有如下条目。 key1=主机、端口、orcl、用户名、密码 key2=主机、端口、orcl、用户名、密码 key3=主机、端口、orcl、用户名、密码等… 这些key1、key2和key3是连接名。 在进入属性文件之前,首先我必须检查该文件是否提供了连接名条目。我的意思是,如果用户再次使用key1或key2或key3连接名输入值,
我正在尝试获取 Cassandra 列系列中的键值对的数量。以下是我使用的代码。 但是当我运行这段代码时,我收到了以下异常。 根据datastax文档(http://www . datastax . com/drivers/Java/2.0/com/datastax/driver/core/row . html),getVarint应该返回一个BigInteger。那么为什么我会得到一个异常呢?我
我有一个基本的SpringBoot应用程序。使用Spring初始值设定项、嵌入式Tomcat、Thymeleaf模板引擎和作为可执行JAR文件的包。 在我的财产档案中: 在我的控制器中: 在模板中: 但这是我在模板中看到的,而不是电子邮件(已拍摄)