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 :

Tk - quitter un widget


Sujet :

Tkinter Python

  1. #1
    bm
    bm est déconnecté
    Membre confirmé

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Points : 556
    Points
    556
    Billets dans le blog
    6
    Par défaut Tk - quitter un widget
    bonjour,

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    from Tkinter import *
     
    class Application(Frame):
        def say_hi(self):
            print "hi there, everyone!"
            #destroy
     
        def say_bye(self):
            print "bye, everyone!"
     
        def createWidgets(self):
            self.QUIT = Button(self)
            self.QUIT["text"] = "QUIT"
            self.QUIT["fg"]   = "red"
            #self.QUIT["command"] =  self.quit
            self.QUIT["command"] =  self.say_bye
            self.QUIT.pack({"side": "left"})
     
            self.hi_there = Button(self)
            self.hi_there["text"] = "Hello",
            self.hi_there["command"] = self.say_hi
     
            self.hi_there.pack({"side": "left"})
     
        def __init__(self, master=None):
            Frame.__init__(self, master)
            self.pack()
            self.createWidgets()
     
    root = Tk()
    app = Application(master=root)
    app.mainloop()
    root.destroy()
    def say_bye(self): quoi ajouter pour quitter après 'bye, everyone!'

    @+

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    A la base, votre code se réduit à çà:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> from tkinter import *
    >>> root = Tk()
    >>> Button(text="quit", command=...).pack()
    >>> mainloop()   
    >>> root.destroy()
    Et la question est de savoir par quoi remplacer ... pour "sortir" de l'appel à "mainloop" et exécuter l'instruction suivante: "root.destroy()". Le plus simple serait "root.quit", non?

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    bm
    bm est déconnecté
    Membre confirmé

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Points : 556
    Points
    556
    Billets dans le blog
    6
    Par défaut
    self.quit() est suffisant
    sauf que j'ai essayé avec self.quit , qui ne donne aucune erreur


  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par bm Voir le message
    self.quit() est suffisant
    sauf que j'ai essayé avec self.quit , qui ne donne aucune erreur
    N'importe quoi".quit()" suffit à sortir de l'appel correspondant à "mainloop".
    Dans tous les cas, les "()" sont indispensables pour "appeler" une fonction/méthode.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 18/06/2003, 15h20
  2. [VB6] Quitter l'appli et fermer toutes les feuilles...
    Par The Bob dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 10/06/2003, 21h06
  3. Réponses: 9
    Dernier message: 11/03/2003, 12h22
  4. Quitter une application FLASH ?
    Par jeje.r dans le forum Flash
    Réponses: 3
    Dernier message: 25/02/2003, 14h57
  5. Impossible de quitter mon application!
    Par Bouillou dans le forum C++Builder
    Réponses: 4
    Dernier message: 12/11/2002, 20h43

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