IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tkinter Python Discussion :

Peut on mettre en variable le champs text d'un label


Sujet :

Tkinter Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2006
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 14
    Par défaut Peut on mettre en variable le champs text d'un label
    Bonjour,

    J'aimerai savoir si possible comment on peut le faire.
    Je travaille avec Tkinter et une fonction me permet d'afficher des pop-up (grâce au toplevel) à intervalle régulier.

    je voudrais que s'affiche dans le pop up un message via un label dont le message serait la variable text.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    def affiche_fiches(phrase):
        popup = Toplevel(fenetre)
        Label(frame,text=phrase).pack() 
     
    def teste():
        while 1 != 0 :
     
            affiche_fiches(phrase)
            time.sleep(1)
     
    fenetre =  Tk()
    teste()
    fenetre.mainloop()
    fenetre.destroy()

  2. #2
    Membre chevronné
    Avatar de vincent.mbg
    Homme Profil pro
    Développeur Python
    Inscrit en
    Décembre 2007
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Python

    Informations forums :
    Inscription : Décembre 2007
    Messages : 327
    Par défaut
    Voici une manière.
    la méthode after appelle la méthode teste après 1000ms.
    teste() demande un argument.
    Je ne peut pas écrire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     after(1000, teste( msg  ) )
    car teste( msg ) retourne None

    On utilise le mot clef lambda qui retourne un objet function


    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
     
    from Tkinter import *
    import time
     
     
    def affiche_fiches( phrase ):
        popup = Toplevel( fenetre )
        Label(popup, text=phrase ).pack()
     
     
    def teste( msg ):
        affiche_fiches( msg )
        fenetre.after( 1000, lambda arg = msg : teste( arg ) )
     
    fenetre =  Tk()
    teste( "Hello" )
    fenetre.mainloop()
    Mon guide pour apprendre Tkinter - N'oubliez pas de consulter les FAQ Python ou de visiter mon blog

  3. #3
    Membre averti
    Inscrit en
    Janvier 2006
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 14
    Par défaut
    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Concaténer variables dans champ text
    Par Jiraiya42 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 31/01/2008, 11h54
  2. Comment mettre une variable dans du texte?
    Par Xanto dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/12/2007, 13h50
  3. mettre une variable dans "champ"
    Par n0unours dans le forum Langage
    Réponses: 1
    Dernier message: 27/11/2007, 22h19
  4. Variable session + champs texte.
    Par nicocsgamer dans le forum Langage
    Réponses: 2
    Dernier message: 11/09/2005, 15h28
  5. peut on mettre 1 variable ds la fonct° ouverture d'1 popup?
    Par zorba49 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 27/07/2005, 12h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo