Java 自定义行样式
我有一个tableview tbvAlumnos,它有两个tablecolumns:tbcNombre,tbcApellidos 我从pojo映射了一个列表:Java 自定义行样式,java,javafx,javafx-8,tableviewcell,Java,Javafx,Javafx 8,Tableviewcell,我有一个tableview tbvAlumnos,它有两个tablecolumns:tbcNombre,tbcApellidos 我从pojo映射了一个列表: public class Alumno { private boolean activo; private String nombre; private String apellidos; } 在我将alumnos的列表映射到tableview的地方,我想在AlumnoActivo为false时用红色文本填充行,在为true
public class Alumno
{
private boolean activo;
private String nombre;
private String apellidos;
}
在我将alumnos的列表映射到tableview的地方,我想在AlumnoActivo为false时用红色文本填充行,在为true时用绿色文本填充行
我试过了,但我不知道如何让每个校友检查是否处于活动状态,因为后续代码失败,因为我传递的是校友项目而不是字符串
tbcNombre.setCellFactory(column -> {
return new TableCell<Alumno, Alumno>() {
@Override
protected void updateItem(Alumno item, boolean empty) {
super.updateItem(item, empty);
if (item == null || empty) {
setText(null);
setStyle("");
} else {
// Format date.
setText(item.toString());
setStyle("-fx-text-fill: red");
}
}
};
});
因此,我如何根据每行中每个项目的条件向所有行字段添加样式。使用单元格工厂,而不是单元格工厂。实际上,它非常复杂,但它应该足以满足您的需要。