Checkbox con Python y Tkinter
Introducción:
Creando nuestro interruptor.
Lo primero que haremos sera importar el modulo tkinter, al cual nos referiremos al el como tk, eso lo asignamos con "as".
import tkinter as tk
Si no etas familiarizado con la programación orientada a objetos, te sugiero que leas un poco al respecto.
class Application(tk.Frame):
def __init__(self, main_window):
super().__init__(main_window)
#Definimos el titulo de main_window (Nuestra ventana principal), para esto usamos "title".
main_window.title("Checkbox con Python y Tkinter")
#Definimos el tamaño de nuestra ventana principal.
self.place(width=300, height=200)
Ya que hallamos especificado las características básicas de nuestra ventana principal, procederemos a la creación de nuestro checkbox.
Para poder obtener acceso al estado de un checkbox (lo cual es justamente lo que queremos, ya que vamos a mostrarlo en pantalla) primero es necesario crear una variable que pueda almacenar su valor. Utilizamos tk.BooleanVar, que representará el estado “activado” como True y “desactivado” como False.
self.value = tk.BooleanVar(self)
Creamos la intacncia del objeto Checkbutton del modulo tkinter, al cual le asignaremos
3 argumentos, los cuales son:
text (texto del chcekbutton),
variable (Variable en la cual guardaremos su estado booleano) y
command (funcion que se llamara al hacer click sobre el checkbutton).
self.checkbox = tk.Checkbutton(self,
text="Interruptor",
variable=self.value,
command=self.clicked)
Listo, tenemos nuestro checkbutton preparado, ahora nos falta colocarlo en
una posición determinada, eso lo logramos con place, pasandole como argumento
su posición en el eje x, y en el eje y.
self.checkbox.place(x=40, y=70)
Si se fijaron, en el argumento command del checkbutton colocamos una función llamada clicked, la cual no existe, pero ahora la definiremos, esta función simplemente nos mostrara el valor del checkbutton en la consola, veamos como se hace:
def clicked(self):
print(self.value.get())
Muy bien, nuestra clase Application ya esta lista para la acción, fuera de nuestra clase crearemos la instancia del objeto Tk, creamos una variable llamada app la cual contendrá la clase Application y le pasaremos el objeto Tk, luego con ayuda del método mainloop haremos que la ventana salga en pantalla, veamos como queda.
main_window = tk.Tk()
app = Application(main_window)
app.mainloop()
Muy bien, luego de finalizar todos los pasos, procedemos a ejecutar el código, el resultado debería quedar algo así:
Bueno, eso ha sido todo, lo hicimos de una forma muy fácil y sencilla, ya que de tu parte experimentar un poco con este pequeño ejemplo, si tienes dudas con gusto la responderé, gracias por leer :D.
Bodigo completo en mi repositorio de GitHub: Código Completo
-
Si, estoy de acuerdo contigo, pero es importante conocer todo los recursos, nunca se sabe cuando podremos necesitarlos 😀
Deja una respuesta
Pero para proyectos grandes no conviene es más extenso pyqt5