[Python] [Tkinter] Fenêtre root + Toplevel

frites.saucisse -  
 Kazuma -
Bonjour,
Imaginons une fenêtre root avec un bouton. Le bouton déclenche l'ouverture d'une fenêtre Toplevel. La fenêtre Toplevel contient un bouton d'auto-destruction.

from Tkinter import *

root = Tk()

def zut():
    t=Toplevel()
    a=Button(t,text='A la niche!',command=t.destroy)
    a.pack()

b = Button(root, text='Zou', command=zut)
b.pack()

root.mainloop()


Trivial. Maintenant la question. Comment faire pour que la fenêtre root soit inactive tant que la fenêtre Toplevel est existante à l'écran?
Merci pour votre aide.
Configuration: Windows XP
Firefox 2.0.0.6

5 réponses

  1. sebsauvage Messages postés 33284 Date d'inscription   Statut Modérateur Dernière intervention   15 684
     
    Et hop...

    from Tkinter import *
    
    root = Tk()
    
    def zut():
        t=Toplevel()
        t.grab_set()
        a=Button(t,text='A la niche!',command=t.destroy)
        a.pack()
    
    b = Button(root, text='Zou', command=zut)
    b.pack()
    
    root.mainloop()
    6