Bonjour,

J'utilise un module Tkinter dans mon programme python pour afficher une fenetre, entrer des donnees dans des champs au clavier et pouvoir reutiliser ces donnees dans le programme qui suit. Mon probleme, c'est que les variables creees semblent etre ignorees apres la ligne " fen1.mainloop() ". Voyez plutot mon debut de programme:

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
 
import math,sys
from matplotlib import pylab,pyplot
from pylab import *
from Tkinter import *
 
def get_value1(event):
	etoile=str(e1.get())
	print "etoile: ", etoile
def get_value2(event):
	jour=e2.get()
	print "jour: ", jour
def get_value3(event):
	mois=str(e3.get())
	print "mois: ", mois
def get_value4(event):
	annee=e4.get()
	print "annee: ", annee
def get_value5(event):
	fichier=str(e5.get())
	print "fichier: ", fichier
 
fen1 = Tk()
 
e1=StringVar()
e2=StringVar()
e3=StringVar()
e4=StringVar()
e5=StringVar()
 
txt1=Label(fen1, text='etoile')
txt2=Label(fen1, text='jour')
txt3=Label(fen1, text='mois')
txt4=Label(fen1, text='annee')
txt5=Label(fen1, text='fichier')
ent1=Entry(fen1,textvariable=e1)
ent2=Entry(fen1,textvariable=e2)
ent3=Entry(fen1,textvariable=e3)
ent4=Entry(fen1,textvariable=e4)
ent5=Entry(fen1,textvariable=e5)
txt1.grid(row=0)
txt2.grid(row=1)
txt3.grid(row=2)
txt4.grid(row=3)
txt5.grid(row=4)
ent1.grid(row=0,column=1)
ent2.grid(row=1,column=1)
ent3.grid(row=2,column=1)
ent4.grid(row=3,column=1)
ent5.grid(row=4,column=1)
 
bou1 = Button(fen1, text='Quitter', command = fen1.destroy)
bou1.grid()
 
 
 
ent1.bind("<Return>",get_value1)
ent2.bind("<Return>",get_value2)
ent3.bind("<Return>",get_value3)
ent4.bind("<Return>",get_value4)
ent5.bind("<Return>",get_value5)
 
fen1.mainloop()
 
print fichier
ofile=open(fichier,'w')
La compilation indique une erreur a la ligne "print fichier" tout en bas en disant que la variable "fichier" n'existe pas alors que quand je tape mes valeurs dans les 5 lignes de la fenetre, le programme imprime bien ces 5 variables dont la variable "fichier".

Comment puis-je regler ca svp?