String TableView JavaFx中的布尔值到字符串
我试图在tableview中将布尔值显示为字符串,所以我想显示的不是true,而是male 老实说,我有点迷路了。我在网上找不到任何帮助 ecilpse给我的错误是类型表列中的方法“setCellValueFactory(回调,ObservalEvalue>)不适用于参数((cellData)->{})” 这是我的密码。这可能是错的String TableView JavaFx中的布尔值到字符串,string,javafx,boolean,tableview,String,Javafx,Boolean,Tableview,我试图在tableview中将布尔值显示为字符串,所以我想显示的不是true,而是male 老实说,我有点迷路了。我在网上找不到任何帮助 ecilpse给我的错误是类型表列中的方法“setCellValueFactory(回调,ObservalEvalue>)不适用于参数((cellData)->{})” 这是我的密码。这可能是错的 TableColumn<Animal, String > genColumn = new TableColumn<>("Male");
TableColumn<Animal, String > genColumn = new TableColumn<>("Male");
genColumn.setMinWidth(50);
genColumn.setCellValueFactory(cellData -> {
boolean gender = cellData.getValue().getGender();
String genderAsString;
if(gender == true)
{
genderAsString = "Male";
}
else
{
genderAsString = "Female";
}
new ReadOnlyStringWrapper(genderAsString);
});
TableColumn genColumn=新的TableColumn(“男性”);
genColumn.设置最小宽度(50);
genColumn.setCellValueFactory(cellData->{
布尔性别=cellData.getValue().getGender();
字符串和字符串;
如果(性别==真)
{
genderastring=“男性”;
}
其他的
{
genderastring=“女性”;
}
新的ReadOnlyStringWrapper(genderAsString);
});
如果您能提供任何帮助,我将不胜感激。谢谢将类型保留为布尔值,并使用单元格工厂更改显示方式:
TableColumn<Animal, Boolean> genColumn = new TableColumn<>("Gender");
genColumn.setCellValueFactory(cellData -> cellData.getValue().genderProperty());
// or cellData -> new SimpleBooleanProperty(cellData.getValue().getGender())
// if your model class doesn't use JavaFX properties
genColumn.setCellFactory(col -> new TableCell<Animal, Boolean>() {
@Override
protected void updateItem(Boolean item, boolean empty) {
super.updateItem(item, empty) ;
setText(empty ? null : item ? "Male" : "Female" );
}
});
TableColumn genColumn=新的TableColumn(“性别”);
genColumn.setCellValueFactory(cellData->cellData.getValue().genderProperty());
//或cellData->new SimpleBoleAnProperty(cellData.getValue().getGender())
//如果您的模型类不使用JavaFX属性
genColumn.setCellFactory(col->newtableCell(){
@凌驾
受保护的void updateItem(布尔项,布尔空){
super.updateItem(项,空);
setText(空?空:项目?“男”:“女”);
}
});
我设法让它工作了,只是缺少了return语句
这是密码
TableColumn<Animal, String > genColumn = new TableColumn<>("Gender");
genColumn.setMinWidth(50);
genColumn.setCellValueFactory(cellData -> {
boolean gender = cellData.getValue().getGender();
String genderAsString;
if(gender == true)
{
genderAsString = "Male";
}
else
{
genderAsString = "Female";
}
return new ReadOnlyStringWrapper(genderAsString);
});
TableColumn genColumn=新的TableColumn(“性别”);
genColumn.设置最小宽度(50);
genColumn.setCellValueFactory(cellData->{
布尔性别=cellData.getValue().getGender();
字符串和字符串;
如果(性别==真)
{
genderastring=“男性”;
}
其他的
{
genderastring=“女性”;
}
返回新的ReadOnlyStringWrapper(genderAsString);
});