Menu

Afficher une variable dans un widget python

Messages postés
1
Date d'inscription
mercredi 28 novembre 2018
Dernière intervention
28 novembre 2018
-
Bonjour,

Je viens de créer un petit prog en python Tk pour afficher sous linux le contenu de la commande
atq
. Mais je n'arrive pas a afficher le contenu de la variable ou se trouve le resultat de la commande. Elle s'affiche bien si je fais un print, mais pas si j'essaie de l'afficher dans un label.

J'imagine que j'ai fait une toute petite bêtise, mais je n'arrive pas a mettre la main dessus.

Si vous la voyez, ca m'arrangerait.

from Tkinter import *
import os

fenetre1 = Tk()
fenetre1.title('Atq')
at = "atq"
result = os.system(at)
result = StringVar()
print result
var_textelabel = Label(fenetre1, textvariable=result)
var_textelabel.pack()
fenetre1.mainloop()


Merci d'avance
Afficher la suite 

Votre réponse

1 réponse

Messages postés
28645
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 décembre 2018
0
Merci
Bonjour,

Pour moi ton erreur est ici :

result = os.system(at)
result = StringVar()


En effet, tu écrases le résultat de
os.system(at)
avec
StringVar()
. Il faudrait j'imagine que
StringVar()
prenne en paramètre
result
.

Il y aussi quelques amélioration qui devraient être apportées :
- fais du python3 :-)
- utilise
Popen
au lieu de
os.system
notamment pour récupérer les éventuelles erreurs.
- contrôle si l'appel à
atq
a marché
- utilise un framework plus moderne que tk (e.g. gtk ou pyqt)

Bonne chance
Commenter la réponse de mamiemando