2009-11-25 10 views
0

J'essaie de ne pas fermer une fenêtre Toplevel dans OSX en interceptant l'événement WM_DELETE_WINDOW du gestionnaire de fenêtres. Lorsque j'exécute ceci, j'ai deux fenêtres pop-up intitulées "root" et "win". Si je clique sur le bouton de fermeture "x" rouge sur "win" pour fermer la fenêtre, imprime "woof" puis se ferme. Cependant, si je cours ce même code sur Windows, "win" reste ouvert et continue d'imprimer "woof" chaque fois que je clique sur le bouton de fermeture "x" rouge.Comment intercepter WM_DELETE_WINDOW sous OSX en utilisant Tkinter

Comment puis-je empêcher la fermeture de la fenêtre Toplevel sur OSX lorsque je clique sur le bouton de fermeture "x" rouge?

Répondre

2

Voir la réponse à Python Issue 12584. Il semble être un bug dans le très buggué Cocoa Tcl/Tk 8.5 qu'Apple a livré avec OS X 10.6. Ne l'utilisez pas ou les Pythons fournis par Apple dans 10.6 si vous utilisez Tkinter ou tout ce qui utilise Tkinter, comme IDLE. Plus d'info here.