2012-07-04 17 views
10

जब तालिका दृश्य नियंत्रण में कोई सामग्री नहीं है, तो यह "तालिका में कोई सामग्री नहीं" प्रदर्शित करती है। उस स्ट्रिंग को कैसे बदलें/स्थानीयकृत करें?JavaFX 2.x TableView स्थानीयकरण

उत्तर

21

यहां आपको

tableView.setPlaceholder(new Text("Your localized text here")); 
+0

हा, यह एक नोड है :) और मैं कुछ स्ट्रिंग सेटर या स्थानीयकरण बंडल की तलाश में था .. धन्यवाद! – Kamil

1

कोई बातें तालिका दृश्य में प्रदर्शित करता है, तो कोई डेटा

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

.table-row-cell:empty .table-cell { 
    -fx-border-width: 0px; 
} 
1

JavaFX सिफारिश के बाद यह इस

Model.java

तरह लागू करने के लिए बेहतर होगा
class Model { 
    private final ObjectProperty<Text> placeholderProperty; 

    Model(ResourceBundle resourceBundle) { 

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

    ... 

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

Controller.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()); 

    } 
    ... 
} 

जब आप स्थानीयकरण सब कुछ आप की जरूरत है अपनी संपत्ति फाइल को संपादित करने के लिए है बदलने वाले हैं।