mise à jour d'un treeCtrl avec une variable globale
Bonjour à toutes et à tous,
j'ai un petit souci de mise à jour d'un treectrl sous boa.
Je vous expose le probleme.
Je possede un frame avec un treectrl vierge. Je souhaite le mettre a jour apres une action utilisateur dans un popup (mise à jour dynamique).
Le texte écrit par l'utilisateur dans la popup est passé dans une variable globale. A la fermeture de la popup, la fonction qui met à jour le treectrl est appelée.
la fonction qui doit mettre à jour le treectrl est défini dans le même module que la variable globale.
Lors de l'appel de cette fonction, la variable globale recoit bien le texte passé par l'utilisateur. Mais le TreeCtrl est considéré comme inconnu.
Ci dessous le code
Avez vous la moindre idée ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
# definition des import
import wx
import Test # Frame ou est defini le treectrl
# definition des variables globales
testnom = ""
bTestNom = False
####################################
# function to add an element in the
# tree ctrol, called treeCtrl1
####################################
def AddElementInTree():
print("dans Addelementintree Monpremier :" + testnom)
racine = Test.treeCtrl1.AddRoot(testnom)
Test.treeCtrl1.SetPyData(racine, None)
Test.treeCtrl1.Expand(racine) |
mise à jour d'un treeCtrl avec une variable locale
Bonjour,
suite à la premiere reponse, voici quelques precisions :
je n'ai pas de probleme pour faire le print avec la séquence + variable.
Je note quand même la remarque.
Concernant le treectrl, j'ai trouvé une solution partiel,mais qui ne me convient pas complement.
En gros, je ferme la fenetre contenant le treectrl et je la reconstruit avec les informations passées dans la ou les variables globales.
Cela marche mais c'est visuellement lourd.
La vrai question est : Comment mettre à jour de maniere dynamique un TreeCtrl ?
Je vais ouvrir un nouveau sujet dessus.
Bonne journée
Lajuve
mise à jour d'un Treectrl
Bonjour et merci à tous pour vos reponses,
voila la solution que j'ai choisie pour l'instant. Elle pourra évoluer dans le temps.
Je considere le treectrl comme un element à plusieurs sous ensemble(3 pour etre precis).
A chaque sous ensemble, j'associe une liste (initialisé avec une seule variable au debut).
A chaque modification du treectrl, je rajoute un element dans la liste visée.
Puis j'entame la mise à jour du treectrl. En fait j'efface tous les elements du treectrl et je reconstruit tout en tenant compte des elements contenues dans les differentes listes.
A la fin, je choise d'expander mon treectrl afin de voir tout l'arbre.
Quel est votre avis sur cette solution ?
Bonne journée
Lajuve