Yalnızca FXML dosyasında yapamazsınız./
@FXML
private ListView<MyDataModel> myListView;
init dinleyicisi ekleyin liste görünümü öğesi değişikliklere dinleyecek yöntemini başlatmak:
FXML dosyasının Kontrolörü sınıfında karşılık gelen ListView (FXML içinde fx:id="myListView"
varsayılarak) tanımlayın
myListView.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<MyDataModel>() {
@Override
public void changed(ObservableValue<? extends MyDataModel> observable, MyDataModel oldValue, MyDataModel newValue) {
// Your action here
System.out.println("Selected item: " + newValue);
}
});
MyDataModel
kendi veri yapısı model sınıfınız veya sadece String
olabilir.
@FXML
private ListView<String> myListView;
...
...
ObservableList<String> data = FXCollections.observableArrayList("chocolate", "blue");
myListView.setItems(data);
myListView.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<String>() {
@Override
public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
// Your action here
System.out.println("Selected item: " + newValue);
}
});
Dize Örneğin data = FXCollections.observableArrayList ( "çikolata", "mavi"); İkisi de işe yaramadı .. bir sınıf sorar .. Bana bir örnek verebilir misiniz lütfen? –
hızlı cevap için teşekkür ederim. Ama MyDataModel ile ilgili sorunlarım var. String olarak denedim. String a = "test" gibi; ve GözlemlenebilirList