Problème d'Entry avec python tkinter

Résolu
gringo222 -  
 siby -
Bonjour à tous,
Je souhaiterais, à l'ouverture d'une fenêtre tkinter que s'affiche dans l'Entry la valeur d'un fichier txt. Je sais déjà l'enregistrer dans le fichier mais pas faire apparaçitre le contenu
Code :#!/usr/bin/python

from Tkinter import *
import os
import csv

def ok():
global fichier
fichier = open('Relation.txt', 'w')
fichier.write(Relation.get())
fichier.close()
ok
application = Tk()
application.title("Relation")

barreEtat = Label(application, text="Ici bientôt un texte d'aide", bd=1, relief=GROOVE, anchor=W)
barreEtat.pack(side=BOTTOM, fill=X)

panneauSup = Frame(application, width=1000, height = 20, relief = FLAT, bg="#FFFF99")
label1=Label(panneauSup, text=' RELATION : ', font = ('arial', '14'), bg="#FFFF99", width=10)
label1.grid(row=0,column=0)
Relation = Entry(panneauSup, width=30)
Relation.grid(row=0, column=1, sticky=W)
panneauSup.pack(side=TOP, fill=BOTH, expand=False)
bOk=Button(panneauSup, text='OK', fg='brown')
bOk.grid(row=0,column=2,sticky=E)
bOk.config(state=NORMAL, relief=RAISED, command=ok)
application.mainloop()

Merci à tous pour vos réponses
A voir également:

5 réponses

sebsauvage Messages postés 32893 Date d'inscription   Statut Modérateur Dernière intervention   15 662
 
Tu n'as pas lié ton Entry() à une variable Tkinter.StringVar(), donc tu ne pourra jamais relire la valeur.

Je te conseille de lire:
https://sebsauvage.net/python/gui/index_fr.html

Il y a deux ou trois astuces qu'il faut connaîte avec Tkinter.
0
gringo222
 
Bonjour
merci pour ta réponse
J'ai beau retourner le probleme dans tous les sens je n'arrive pas à récupérer la valeur du fichier pour la mettre dans l'entry à l'ouverture de la fenetre

<code>
from Tkinter import *
import os
import csv

def ok():
global fichier
fichier = open('Relation.txt', 'w')
fichier.write(Relation.get())
fichier.close()

application = Tk()
application.title("Relation")
r = stringvar()
barreEtat = Label(application, text="Ici bientôt un texte d'aide", bd=1, relief=GROOVE, anchor=W)
barreEtat.pack(side=BOTTOM, fill=X)

panneauSup = Frame(application, width=1000, height = 20, relief = FLAT, bg="#FFFF99")
label1=Label(panneauSup, text=' RELATION : ', font = ('arial', '14'), bg="#FFFF99", width=10)
label1.grid(row=0,column=0)
Relation = Entry(panneauSup, textvariable = r, width=30)
Relation.grid(row=0, column=1, sticky=W)
panneauSup.pack(side=TOP, fill=BOTH, expand=False)
bOk=Button(panneauSup, text='OK', fg='brown')
bOk.grid(row=0,column=2,sticky=E)
bOk.config(state=NORMAL, relief=RAISED, command=ok)
application.mainloop()
0
sebsauvage Messages postés 32893 Date d'inscription   Statut Modérateur Dernière intervention   15 662
 
C'est normal: Ce n'est pas un Relation.get() qu'il faut faire, mais un .get() sur la variable r: r.get()

Tu devrais faire ton appli sous forme d'objet, ce qui simplifiera l'accès à la variable r dans chaque fonction.
0
siby57
 
Bonjour,

je suis un debutant en prog
j'ai rencontre un petit soucis qui commence a me depasser!

regarder cet exemple:
self.enty_text1=StringVar()
self.enty_text1.set(str(self.filtrage_nom_fichier(filename)))
self.entree1=Entry(self.LF_org,width=70,state=DISABLED, textvariable=self.enty_text1)

j'utilise plusieurs fichiers donc chacun une a deux classes
quand je texte le fichier tout seul aucun probleme mais rien ne marche quand
j'appelle ce meme fichier dans un autre fichier
en fait dans l'Entry ne s'affiche !!!!!!!!


je suis complemetent perdu!
si vous avez une idee ça sera sympa de votre part
je vous remercie.


Configuration: Windows XP / Internet Explorer 6.0
0
siby
 
Bonjour,

je suis un debutant en prog
j'ai rencontre un petit soucis qui commence a me depasser!

regarder cet exemple:
self.enty_text1=StringVar()
self.enty_text1.set(str(self.filtrage_nom_fichier(filename)))
self.entree1=Entry(self.LF_org,width=70,state=DISABLED, textvariable=self.enty_text1)

j'utilise plusieurs fichiers donc chacun une a deux classes
quand je execute le fichier tout seul aucun probleme mais rien ne marche quand
j'appelle ce meme fichier dans un autre fichier
en fait dans l'Entry ne s'affiche !!!!!!!!


je suis complemetent perdu!
si vous avez une idee ça sera sympa de votre part
je vous remercie.


Configuration: Windows XP / Internet Explorer 6.0
0
gringo222
 
Bonjour
Ca y est j'ai resolu mon probleme avec un :
StringVar() ainsi qu'un
fichier.set(open('Relation.txt', 'r').read())
Merci pour ton aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sebsauvage Messages postés 32893 Date d'inscription   Statut Modérateur Dernière intervention   15 662
 
De rien :-)
Je marque le sujet en "résolu".
0