在树状表视图中,有子项目又包含其他子项目。我需要自定义那些伪根项的某些单元格的文本。
有没有办法为这些项目分配css类/样式?
更新
好的,让它使用以下cellFactory:
treeTblColumnName.setCellFactory(new Callback<TreeTableColumn<FileModel, String>, TreeTableCell<FileModel, String>>() {
@Override
public TreeTableCell<FileModel, String> call(TreeTableColumn<FileModel, String> param) {
TreeTableCell<FileModel, String> cell = new TreeTableCell<FileModel, String>() {
@Override
protected void updateItem(String t, boolean bln) {
super.updateItem(t, bln); //To change body of generated methods, choose Tools | Templates.
System.out.println(this.getTableColumn().);
Label lbl = new Label(t);
lbl.setStyle("-fx-font-weight: bold; -fx-font-size: 14pt; -fx-text-fill: white;");
setGraphic(lbl);
}
};
return cell;
}
});
现在,我如何区分班级? FileModel是一个由几个类实现的接口。在这个cellFactory中,我需要知道当前cell-&gt;项目的类型,以便在其上应用不同的样式。
感谢。
答案 0 :(得分:0)
您可以使用instanceof
:
FileModel fileModel = getTreeTableRow().getItem();
if(fileModel instanceof ExeFileModel){
//set style here
} else if(fileModel instanceof TxtFileModel){
//use another style here
}