10

当 TableView 控件不包含任何内容时,它会显示“No content in table”。如何更改/本地化该字符串?

4

3 回答 3

21

干得好

tableView.setPlaceholder(new Text("Your localized text here"));
于 2012-07-05T08:27:08.743 回答
1

如果没有数据,表格视图中不会显示任何内容

.table-row-cell:empty {
    -fx-background-color: lightyellow;
}

.table-row-cell:empty .table-cell {
    -fx-border-width: 0px;
}
于 2012-10-12T10:16:35.387 回答
1

按照 JavaFX 的建议,最好像这样实现

模型.java

class Model {
    private final ObjectProperty<Text> placeholderProperty;

    Model(ResourceBundle resourceBundle) {

        placeholderProperty = new SimpleObjectProperty<>(new Text(resourceBundle.getString("placeholderTextFromLocalizationProperties")));
    }

    ...

    ObjectProperty<Text> placeholderProperty() {
        return placeholderProperty;
    }
}

控制器.java

class Controller implements Initializable {
    private Model model;
    @FXML
    private TableView tableView;
    ...
    @Override
    public void initialize(URL url, ResourceBundle resourceBundle) {
        model = new Model(resourceBundle);

        tableView.setPlaceholder(model.placeholderProperty().get());

    }
    ...
}

当您要更改本地化时,您需要做的就是编辑您的属性文件。

于 2014-07-06T11:35:06.860 回答