Bonjour,
Je suis en train de faire une appli python utilisant tkinter, et j'ai un problème avec la fonction tkFileDialog.askopenfile.
Je voudrais qu'un label affiche "aucun " si l'utilisateur ferme la boîte de dialogue/clic sur annuler, ou le nom du fichier choisi le cas échéant.
(j'utilise une classe, d'où les self.machin)
Tout d'abord j'associe une variable au texte du label :
Code :
- self.fichier = StringVar()
- Label(frame, text="Fichier :" ).grid(row=0, column=1)
- Label(frame, textvariable=self.fichier).grid(row=1, column=1)
|
J'initialise cette variable à "aucun", et le label l'affiche correctement au lancement du programme.
Code :
- self.fichier.set("Aucun" )
|
Maintenant la fonction qui gère le dialogue :
Code :
- def get_filename(self):
- fichier = tkFileDialog.askopenfilename(filetypes=[('Fichiers csv', '*.csv')])
- if fichier == None :
- self.fichier.set("Aucun" )
- else:
- self.fichier.set(fichier)
|
Je pense que c'est clair. Si un fichier est choisi son chemin/nom est affiché dans le label, si l'utilisateur à cliqué sur annuler/fermé le dialogue "aucun" est affiché.
Si l'utilisateur choisi un fichier ca marche, par contre si il ne choisit rien "aucun" n'est pas affiché et le label reste vide
J'ai essayé de remplacer None par "" ou '', ca ne change rien.
Vous avez une idée ?
merci