Bonjour,

Voila j'ai un problème qui va surement vous paraître enfantin mais je bloque quand j'essaye de récupérer la valeur d'un widget Entry sous Tkinter.
erreur affichée
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 File "C:\Python25\Module1.py", line 6, in ouvrir
    mon_txt = 'c:/'+ Entree
TypeError: cannot concatenate 'str' and 'instance' objects
Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Python25\lib\lib-tk\Tkinter.py", line 1403, in __call__
    return self.func(*args)
  File "C:\Python25\Module1.py", line 15, in fermer
    enregistrer()
  File "C:\Python25\Module1.py", line 21, in enregistrer
    fichier.write(str(Entree))
AttributeError: 'str' object has no attribute 'write'
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
# -*- coding: utf-8 -*-
from Tkinter import *
 
def ouvrir ():
    global fichier, Entree
    mon_txt = 'c:/'+ str(Entree)
    text1.configure(text = mon_txt)
    try:
        fichier = open(mon_txt, 'r')
    except:
        fichier = open(mon_txt, 'w')
 
def fermer ():
    global fichier
    enregistrer()
    fichier.close()
    fen1.destroy()
 
def enregistrer():
    global fichier
    fichier.write(str(Entree))
 
fichier, mon_txt = '', ''
fen1 = Tk()
Entree = Entry(fen1)
Entree.pack(side = LEFT)
text1 = Label(fen1, text='')
text1.pack(side = LEFT)
bouton_ouvrir = Button(fen1, text = 'Ouvrir', command = ouvrir)
bouton_ouvrir.pack(side = LEFT)
bouton_fermer = Button(fen1, text ='Fermer', command = fermer)
bouton_fermer.pack(side = LEFT)
zonetext = Text(fen1, height = 400, width = 400)
zonetext.pack(side=RIGHT)
fen1.mainloop()
je ne sais pas ou est la fausse manip mais je pense que plusieurs choses clochent notament au niveau de la déclaration des variables. Je pense également que j'ai un problème d'encodage car les fichiers créés ont des noms avec des chiffres.
merci d'avance