Bonjour à tous,
je rencontre un problème avec une JTable.
Lorsque je copie une ligne et que je souhaite modifier une cellule, ce sont les 2 valeurs des 2 lignes qui sont modifiées.
On pourrai croire que ma copie ne créer pas de nouveau objet et que j'utilise le même mais lorsque je modifie ma valeur hors de la JTable, cela modifie la bonne valeur et non les 2.
Je poste des bouts de code:
La copie
la méthode copie()
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 public void CopierVoie(VoieMesure voie) { VoieMesure voieTempo = new VoieMesure(voie.getNom()+"_copie"); for (Element element : voie.getElementVoie()) { Element elementTempo; elementTempo = element.copie(element); // copie de l'element voieTempo.addElement(elementTempo); } }
Le problème vient peut être de mes getValue / setValue dans ma tableModel mais je ne vois pas où...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public Element copie(Element aCopier) { Element copie = new Element(); copie.setDonnees(aCopier.donnees); return copie; }
[EDIT] le problème ne vient pas des getValue et setValue mais plutôt des références, je ne m'y connais pas trop mais il doit y avoir une histoire de références qui pointent sur le même objet tant qu'on ne l'utilise pas ou je sais trop quoi![]()
Partager