Bonjour à tous !
Mon premier message sur ce forum. Je me suis lancé cette semaine dans la programmation en Python et j'ai un petit problème de hierarchie de fenêtres avec Tkinter dans mon application. J'ai isolé le problème dans un code un peu moins lourd:
le problème que j'ai est le suivant:
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 from Tkinter import * from tkMessageBox import showinfo def Popup(): top=Toplevel() popupbutton=Button(top,text="info",command=showinfo) popupbutton.pack() popupexit=Button(top,text="exit",command=top.destroy) popupexit.pack() root=Tk() frame=Frame(root) frame.pack() button=Button(frame,text="Toplevel",command=Popup) button.pack() root.mainloop()
Quand je clique sur le bouton Toplevel, une fenêtre apparait avec 2 boutons: info et exit.
Quand j'appuie sur info il m'affiche une fenêtre d'information avec le bouton ok. Lorsque je clique sur ok, cette fenêtre disparait mais c'est la fenêtre root qui est au premier plan et qui est sélectionnée.
comment puis je m'y prendre pour que lorsque je clique sur le ok de ma fenêtre info, le "focus" soit sur la fenêtre popup et pas la root ?
question subsidiaire, est il possible de "désactiver" la fenêtre root dès que la fenêtre popup arrive ? de sorte qu'il soit impossible de lancer 2 instances de la fenêtre popup.
J'ai essayé sans succès de jouer avec les méthodes lift, lower, focus_set... mais je n'ai pas réussi à trouver la bonne combinaison...
Merci d'avance pour votre aide !
Partager