2 votes

Grouper des fenêtres dans tkinter

J'ai une application tkinter qui a une fenêtre principale (un Tk) et une fenêtre supplémentaire (un Toplevel).

Je veux que ces fenêtres soient regroupées dans le gestionnaire de fenêtres (GNOME Shell). Je pense qu'il est nécessaire que la ressource WM_CLASS et le nom WM_CLASS soient identiques pour les deux fenêtres pour que cela se produise.

Paramètres className sur Tk et en fixant class sur Toplevel à mon nom d'application semble changer le nom WM_CLASS mais pas la ressource, c'est pourquoi je pense qu'ils ne sont pas groupés. xprop WM_CLASS sur Windows montre le nom que j'ai choisi pour les deux entrées sur le Tk : WM_CLASS(STRING) = "myapp", "Myapp" . Pour le Toplevel, il affiche un tk_uid pour le premier élément : WM_CLASS(STRING) = "140626444609872", "Myapp" .

J'ai également essayé de définir les titres des fenêtres, mais cela ne semble pas faire de différence.

3voto

Brad Lanam Points 3902

Vous pouvez utiliser le wm group pour regrouper les fenêtres. Certains systèmes d'exploitation / gestionnaires de fenêtres peuvent ne pas respecter ce paramètre.

Dans tkinter, vous pouvez le faire en appelant group sur l'instance Toplevel avec l'instance Root Tk comme argument.

Références : wm (tk) , wm (tkinter)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X