Maison >développement back-end >Tutoriel Python >Comment faire disparaître les widgets Tkinter : Explorer les secrets de `pack_forget` et `grid_forget`

Comment faire disparaître les widgets Tkinter : Explorer les secrets de `pack_forget` et `grid_forget`

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-01 08:25:30321parcourir

How to Make Tkinter Widgets Vanish: Exploring `pack_forget` and `grid_forget` Secrets

Gérer la visibilité des widgets dans Tkinter : dévoiler les secrets pack_forget et grid_forget

Tkinter, une bibliothèque GUI largement utilisée pour Python, fournit un ensemble complet de widgets pour créer des utilisateurs interfaces. Cependant, vous pouvez parfois rencontrer le besoin de rendre certains widgets invisibles ou masqués dans des conditions spécifiques. Dans cet article, nous allons explorer comment y parvenir à l'aide des méthodes pack_forget et grid_forget.

Considérons l'exemple suivant, où un widget Label avec le texte « bonjour » est affiché :

Label(self, text = 'hello', visible='yes')

En revanche, le code suivant rend le widget Label complètement invisible :

Label(self, text = 'hello', visible='no')

Bien que la propriété 'visible' permette d'obtenir le résultat souhaité, ce n'est pas la solution la plus efficace ou la plus flexible. Au lieu de cela, Tkinter propose deux méthodes plus puissantes : pack_forget et grid_forget.

Méthode pack_forget :

La méthode pack_forget supprime un widget compressé de la mise en page, le rendant invisible. Pour utiliser cette méthode, nous devons d'abord compresser le widget en utilisant la méthode 'pack'. Par exemple :

<code class="python">btn = Button(root, text="Click")
btn.pack()</code>

Une fois emballé, vous pouvez masquer le widget en appelant la méthode pack_forget :

<code class="python">btn.pack_forget()</code>

Méthode grid_forget :

Semblable à pack_forget, grid_forget supprime un widget en grille de la mise en page. Pour utiliser cette méthode, nous devons d'abord griller le widget en utilisant la méthode 'grid'. Par exemple :

<code class="python">btn2 = Button(root, text="Click too")
btn2.grid(row=1, column=0)</code>

Pour masquer le widget quadrillé, nous appelons la méthode grid_forget :

<code class="python">btn2.grid_forget()</code>

Un exemple pratique :

Voyons illustrez l’utilisation de ces méthodes avec un exemple simple. Ce code crée deux boutons qui disparaissent lorsque vous cliquez dessus :

<code class="python">from Tkinter import *

def hide_me(event):
    event.widget.pack_forget()

root = Tk()
btn = Button(root, text="Click")
btn.bind('<Button-1>', hide_me)
btn.pack()

btn2 = Button(root, text="Click too")
btn2.bind('<Button-1>', hide_me)
btn2.pack()

root.mainloop()</code>

En comprenant les méthodes pack_forget et grid_forget, vous pouvez facilement gérer la visibilité des widgets dans vos applications Tkinter, vous permettant de créer des interfaces utilisateur plus dynamiques et interactives.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn