¿Cómo ocultar, recuperar y eliminar widgets de Tkinter?

Tkinter es un paquete de Python para crear aplicaciones GUI (interfaz gráfica de usuario). Tkinter nos proporciona una variedad de elementos GUI comunes que podemos usar para crear interfaces, como botones, etiquetas, marcos, mensajes, menús y varios tipos de campos de entrada y áreas de visualización. A estos elementos los llamamos Widgets.

El widget es un elemento de la interfaz gráfica de usuario (GUI) que ilustra información para que un usuario pueda interactuar con el sistema operativo. En Tkinter, los Widgets son objetos; instancias de clases que representan botones, marcos, etc.  

En este artículo, demostraremos cómo ocultar, recuperar y eliminar los widgets de Tkinter, utilizando los diversos elementos de los widgets, como botones, etiquetas, marcos, etc.

Podríamos ocultar los widgets de Tkinter llamando al método pack_forget() para que los widgets sean invisibles. Necesitamos volver a llamar al método pack() para empaquetar el widget y hacerlo visible, o para recuperarlo. También podemos eliminar los widgets de Tkinter de forma permanente llamando al método destroy() en esta sección.

Ejemplo 1: ocultar y recuperar el botón en Tkinter usando el método de olvidar_paquete( ) y paquete() .

Sintaxis:

widget.forget_pack()

El widget puede ser cualquier widget válido que esté visible.

Python3

# Imports tkinter
from tkinter import *
  
# toplevel window
root = Tk()
  
# Method to make Button(Widget) invisible from toplevel
  
  
def hide_button(widget):
    # This will remove the widget from toplevel
    widget.pack_forget()
  
  
# Method to make Button(widget) visible
def show_button(widget):
    # This will recover the widget from toplevel
    widget.pack()
  
  
# Button widgets
B1 = Button(root, text="Button 1")
B1.pack()
  
  
# See, in command hide_button() function is passed to hide Button B1
B2 = Button(root, text="Button 2", command=lambda: hide_button(B1))
B2.pack()
  
# In command show_button() function is passed to recover Button B1
B3 = Button(root, text="Button 3", command=lambda: show_button(B1))
B3.pack()
  
root.mainloop()

Producción:

Ejemplo 2: ocultar y recuperar la etiqueta en Tkinter usando el método de olvidar_paquete() y paquete(). 

Python3

# Imports tkinter
from tkinter import *
  
# toplevel window
root = Tk()
  
# label widget
label = Label(root, text="LABEL")
  
  
# Method to make Label(Widget) invisible
def hide_label():
    # This will remove the widget
    label.pack_forget()
  
  
# Method to make Label(widget) visible
def recover_label():
    # This will recover the widget
    label.pack()
  
  
# hide_label() function hide the label temporarily
B2 = Button(root, text="Click To Hide label", fg="red", command=hide_label)
B2.pack()
  
# recover_label() function recover the label
B1 = Button(root, text="Click To Show label",
            fg="green", command=recover_label)
B1.pack()
  
# pack Label widget
label.pack()
  
# Start the GUI
root.mainloop()

Producción:

Ejemplo 3: elimine los widgets de Tkinter de forma permanente llamando al método destroy() . Podemos usar este método con cualquiera de los widgets disponibles así como con la ventana principal de tkinter.

Python3

from tkinter import *
  
# toplevel window
root = Tk()
  
# label widget
mylabel = Label(root, text="GeeksforGeeks")
mylabel.pack()
  
# delete_label() function  to delete Label(Widget) permanently
  
  
def delete_label():
    mylabel.destroy()
  
  
# Creating button. In this destroy method is passed
# as command, so as soon as button is pressed
# Label will be destroyed
B1 = Button(root, text="DELETE", command=delete_label)
B1.pack()
  
# start the GUI
root.mainloop()

Producción:

Publicación traducida automáticamente

Artículo escrito por aksrathod07 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *