Requisitos previos: Tkinter
El módulo Tkinter de Python ofrece la función Button para crear un botón en una ventana Tkinter para ejecutar cualquier tarea una vez que se hace clic en el botón. La tarea se puede asignar en el parámetro de comando de la función Button() . A continuación se presentan varios métodos mediante los cuales se puede lograr esto.
Método 1: Usar el método destroy() Non-Class
Acercarse:
- Importar módulo tkinter.
- Cree una ventana principal llamada root.
- Agrega un botón.
- Asigne root.destroy al atributo de comando de ese botón.
Ejemplo: uso de destroy() directamente en el atributo de comando
Python3
# Python program to create a close button # using destroy Non-Class method from tkinter import * # Creating the tkinter window root = Tk() root.geometry("200x100") # Button for closing exit_button = Button(root, text="Exit", command=root.destroy) exit_button.pack(pady=20) root.mainloop()
Ejemplo: Usar destroy() en una función
Python3
# Python program to create a close button # using destroy Non-Class method from tkinter import * # Creating the tkinter window root = Tk() root.geometry("200x100") # Function for closing window def Close(): root.destroy() # Button for closing exit_button = Button(root, text="Exit", command=Close) exit_button.pack(pady=20) root.mainloop()
Producción:
Método 2: Usando el método de clase destroy()
Acercarse:
- Importar módulo tkinter.
- Cree una clase de ventana tkinter.
- Cree una ventana principal llamada root.
- Agrega un botón.
- Asigne root.destroy al atributo de comando de ese botón.
Ejemplo: uso de destroy() directamente en el atributo de comando
Python3
# Python program to create a close button # using destroy Class method from tkinter import * # Class for tkinter window class Window(): def __init__(self): # Creating the tkinter Window self.root = Tk() self.root.geometry("200x100") # Button for closing exit_button = Button(self.root, text="Exit", command=self.root.destroy) exit_button.pack(pady=20) self.root.mainloop() # Running test window test = Window()
Ejemplo: Usar destroy() en una función
Python3
# Python program to create a close button # using destroy Class method from tkinter import * # Class for tkinter window class Window(): def __init__(self): # Creating the tkinter Window self.root = Tk() self.root.geometry("200x100") # Button for closing exit_button = Button(self.root, text="Exit", command=self.Close) exit_button.pack(pady=20) self.root.mainloop() # Function for closing window def Close(self): self.root.destroy() # Running test window test = Window()
Producción:
Método 3: Usando el método quit()
Este método no funciona correctamente si está llamando a su aplicación Tkinter desde IDLE, ya que quit() terminará todo el intérprete TCL y hará que el bucle principal se cierre dejando todos los widgets intactos. Por lo tanto, es mejor usar quit() si está usando cualquier otro editor/intérprete que no sea IDLE. O bien, puede usar la función exit() después de mainloop para salir del programa Python.
No se recomienda usar quit() si su aplicación Tkinter se ejecuta desde IDLE , ya que cerrará el intérprete y dejará el programa ejecutándose con todos sus widgets. Tampoco se recomienda principalmente porque puede fallar en algunos intérpretes.
Acercarse:
- Importar módulo tkinter.
- Cree una ventana principal llamada root.
- Agrega un botón.
- Asigne root.quit al atributo de comando de ese botón.
- Agregue la función exit() después de llamar al mainloop
Ejemplo:
Python3
# Python program to create a close button # using quit method from tkinter import * # Creating the tkinter window root = Tk() root.geometry("200x100") # Button for closing exit_button = Button(root, text="Exit", command=root.quit) exit_button.pack(pady=20) root.mainloop() exit(0)
Producción: