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 :
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.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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()); } }
Merci pour votre aide !![]()
Partager