problème objets instanciés
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:
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:
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