Características comunes de Label, Entry, button, radiobutton checkbutton

Características comunes de Label, Entry, button, radiobutton checkbutton

Label, Entry, button, radiobutton y checkbutton, comparten varias características y métodos comunes que los hacen interactivos y útiles para construir interfaces de usuario en aplicaciones.

Características Comunes

  1. Contenedor:

    • Todos los widgets necesitan un contenedor o padre (ventana) donde se colocarán. Esto usualmente es una instancia de Tk o un Frame.

  2. Opciones de Configuración:

    • text: Casi todos los widgets (excepto Entry) pueden mostrar texto. En Entry, el texto se introduce mediante el usuario.

    • font: Todos permiten cambiar la tipografía, tamaño y estilo del texto.

    • background (bg) y foreground (fg): La mayoría de los widgets permiten modificar el color de fondo y el color del texto.

    • width y height: Controlan las dimensiones del widget, aunque su interpretación puede variar (por ejemplo, en Entry, width se refiere al número de caracteres).

    • state: Muchos widgets pueden ser configurados como normal, disabled o readonly, controlando si el usuario puede interactuar con ellos.

  3. Métodos de Geometría:

    • pack(), grid(), y place(): Son los métodos de gestión de geometría para organizar los widgets dentro de su contenedor. Cada método tiene sus propias características y usos adecuados.

  4. Control de Eventos:

    • command: Widgets como Button, Radiobutton y Checkbutton usan esta opción para definir una función que se llamará cuando el usuario interactúe con el widget (como hacer clic en un botón).

Métodos Comunes

  • config() / configure(): Permite configurar las propiedades del widget después de su creación.

  • cget(): Utilizado para obtener el valor actual de una configuración del widget.

Ejemplo

from tkinter import *

def enviar():
    print("Nombre:", Entrada.get())
    res="Suscripción al boletín:"
    if var_check.get():
        res=res+" Sí"
    else:
        res=res+" No"
    print(res)

ventana =  Tk()
ventana.title("Formulario Simple")

ventana.geometry("450x450")
ventana.resizable(False, False)

# Label
Etiqueta =  Label(ventana, text="Nombre:", font=("Arial", 12))
Etiqueta.pack()

# Entry
Entrada=  Entry(ventana, font=("Arial", 12), bg="lightgray", width=20)
Entrada.pack()

# Button
Boton =  Button(ventana, text="Enviar", command=enviar)
Boton.pack()

# Checkbutton
var_check =  BooleanVar()
check =  Checkbutton(ventana, text="Suscribirse al boletín", variable=var_check)
check.pack()

ventana.mainloop()

Última actualización