Bonjour,

J'ai un soucis de variable globale... J'expose le problème :
J'ai 2 fichiers :
- main.py (définit les variables et lance la fenêtre GUI)
- Window1.py (gère la fenêtre elle même, affichage et callbacks)

Mon fichier main.py
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
from Window1 import *
 
if __name__ == "__main__":
    globals()["test"] = "ma variable globale"
    window = Window1("??")
 
    gtk.main()
Mon fichier Window1.py
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
 
import gtk, sys, pygtk, chardet
pygtk.require('2.0')
 
class Window1:
    def __init__(self, arg1):
        self.arg1 = arg1
        self.gtk_window = gtk.Window(gtk.WINDOW_TOPLEVEL)
        self.gtk_window.connect("destroy", gtk.main_quit)
        button = gtk.Button("Custom Button")
        button.connect("clicked", self.button_clicked)
        self.gtk_window.add(button)
        self.gtk_window.show_all()
 
    def button_clicked(self, button):
        print("button")
        print globals()["test"]
Quand je clique sur le bouton, la variable globale n'existe pas ...

Si quelqu'un peut m'expliquer le pourquoi du comment.

D'avance Merci