Mise-à-jour d'une ListView
Bonsoir tout le monde,
je travaille depuis peu sur un petit projet qui comporte une ListView que je veux gérer librement c'est à dire effacer son contenu y mettre un autre et tout ça à l'intérieur de la ListView autrement dit, en s'appuyant sur le 'ChangeListener', le code exécute les opérations voulues (suppression,remplissage) mais il y exception "java.lang.IndexOutOfBoundsException" suite à l'appel de la méthode 'Clear' je pense, et je vous assure que j'ai bien cherché avant de venir ici, voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
public void ListenerList(){
/* ListV étant la ListView avec un paramètre <String> */
ListV.getSelectionModel().selectedIndexProperty().addListener(new ChangeListener<Number>() {
@Override
public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
Update(new File(ListV.getItems().get((int)newValue)));
}
});
}
private void Update(File f){
ListV.getItems().clear();
for(File path: f.listFiles()){
ListV.getItems().add(path.getAbsolutePath());
}
} |
Pour ce qui est de ma recherche j'ai juste trouvé la solution du 'runnable' qui m'intrigue, j'aimerais toutefois si possible comprendre la cause de cette Erreur.
Merci pour votre aide ! :P