Bonjour!
Je viens poster car je bute vraiment sur un problème, et n'ai pas trouvé la solution sur FAQ/Forum/Google.
J'ai un programme qui ouvre 2 types de JDialog cutomisées: FirstQuestionNetBeans et CarDesignNetBeans, que j'appelerai C1 et C2, pour récupérer des informations de la part de l'utilisateur.
Pour C1, je passe un tableau d'entiers en arguments du constructeur, et je traite ce tableau une fois C1 fermée:
Je récupère donc 3 entiers et tout marche très bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 ... int[] fqResults = new int[3]; FirstQuestionsNetBeans fq = new FirstQuestionsNetBeans(null, fqResults); fq.setVisible(true); //when the user clicks OK the FirstQuestion window closes int nbCars = fqResults[0]; int defaultSpeed = fqResults[1]; int nbCarsToDefine = fqResults[2]; ...
Pour C2 c'est similaire, si ce n'est que je ne passe pas un tableau d'entier mais un objet 'Car' (et un tableau de booleans):
Voila, le probleme c'est que lorsque j'accède à l'objet currentCar, il n'a pas changé depuis sa première instanciation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 ... Car currentCar = new Car(manager, "no_name", "random", 50, entries.get(0), null, nodes, edges) ; //this boolean will be used to know if the car has been properly designed boolean[] creationOK = new boolean[1]; creationOK[0]=false; CarDesignNetBeans cd = new CarDesignNetBeans(null, Handy.createBehavioursList(),Handy.getLabelsList(entries),Handy.getLabelsList(exits), entries, exits, nodes, edges, exitsFromEntries, (i+1), currentCar, creationOK, manager); cd.setVisible(true); ...
Je veux dire: j'ai fait currentCar = new(...) pour ne pas transmettre un 'null', mais ma fentre CarDesignNetBeans est sensée permettre de redéfinir cet objet currentCar!!!
(précision: que ce soit pour currentCar, ou pour les tableaux que j'ai fait passé en argument à mes JDialog, ce sont tous devenus des champs de ces classes).
C'est là que j'ai besoin de votre aide: pourquoi ça marche avec les tableaux, et pas avec ma 'currentCar'? (et pendant que vous y êtes, si vous avez une idée de solution...) ;-)
Merci d'avance!
Partager