Bonjour,
Voilà j'ai fait un prog qui comporte une 10ene de classe.
Pour l'instant j'ai tout dans un fichier....
j'ai donc voulu diviser en plusieurs fichiers... cependant un probleme se pose :
voilà j'ai une classe qui fait office de singleton :
puis j'ai une classe fenetre :
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 from Fenetre import * class Partie: _Partie = None @staticmethod def getPartie(): if Partie._Partie == None: Partie._Partie = Partie() return Partie._Partie def setFenetre(self, f): self._fenetre = f def initialiser(self): ..... self._fenetre.afficher(para) if __name__ == "__main__": f = Fenetre() Partie.getPartie().setFenetre(f) f.autremethode()
voilà mon probleme c'est qui rentre bien dans setFenetre(f) mais quand apres j'appelle f.autremethode(), il appel bien initialiser() de Partie mais il me dit que Partie n'a pas d'attribut _fenetre...., comme si mon singleton n'en etait plus un....alors que si je mets les 2 classes dans un fichier, tout marche parfaitement....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 from Partie import * class Fenetre: def afficher(self, para): ..... def autremethode(self): Partie.getPartie().initialiser()
si qqun a deja eu ce prob ?
Note : dans l'etat actuel mon exemple peut paraitre sans aucun interet mais c'est sorti de son contexte![]()
Partager