Bonjour à tous.
Après avoir cherché un moment, je viens demander conseil à propos des dictionnaires.
En effet, j'ai des objets avec des attributs, j'ai une fenetre avec des labels et des champs de saisie. Sur chaque ligne, un label et un champ de saisie.
Je précise que le code qui pose problème est dans une sous-classe, qui construit une fenetre Toplevel, sous Tkinter.
Je voudrais mettre à jour des attributs d'objets dispersés dans mon programme, lorsqu'on clique sur le bouton "Recuperer les valeurs". Pour cela je souhaite faire appel à un dictionnaire dont je complète les associations, et ensuite automatiser l'action grâce à un compteur i (et les boucles for ou while qui vont bien).
Le souci est que je ne peux pas ecrire dans l'objet avec cette méthode. Ca fonctionne si j'écris directement dans l'objet, mais je n'y arrive pas en passant par le dictionnaire, l'attribut n'est pas modifié.
Sachant que si je tape à la main : objetA.attribut = self.objetB.champSaisie.get(), celà fonctionne, je suis ouvert aux conseils qui me permettraient de résoudre ce souci.
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 def __init__ (self) : global association global liste self.association = {0: objetA.attribut} self.liste= {0 : self.objetB.champSaisie} self.association = {1: objetC.attribut} self.liste= {1 : self.objetD.champSaisie} def Appliquer(self) : self.association[i] = self.liste[i].valeur.get() def Raffraichir(self) : self.liste[i].valeur.set(self.association[i])
Merci par avance pour vos conseils éventuels.
Partager