.class { align:center; }
Tkinter

Python Tkinter Spinbox – Cómo usar

En este tutorial de Tkinter, aprenderemos sobre el Widget de cuadro de giro de Python Tkinter. Y también cubrimos la siguiente lista de temas:

Caja giratoria de Python Tkinter

El widget Python Tkinter Spinbox es un tipo de widget de entrada con algunas funciones avanzadas. En esta sección exploraremos todo el potencial de Python Tkinter Spinbox.

  • Python Tkinter Spinbox es un tipo de widget de entrada con flechas arriba-abajo.
  • El rango de datos se puede colocar dentro del cuadro de número y el usuario puede navegar usando las flechas hacia arriba y hacia abajo.
  • Además, el usuario puede escribir información como lo hacemos en el widget de entrada.

Código fuente:

En este código, hemos creado un widget simple de Python Tkinter Spinbox.

  • Python Tkinter Spinbox requiere un rango de valores para que pueda mostrar la información.
  • de_ es el comienzo del rango de número y a es la meta de la gama.
  • Alternativa a de_ y a también podemos pasar Lista o Tupla de información para el valor opción.
  • ejemplo: valor = [1, 2, 3, 4, 5, 6]
from tkinter import *

ws = Tk()
ws.title('PythonGuides')
ws.geometry('400x200')
ws.config(bg='#31403C')

Spinbox(
    ws,
    from_=1,
    to=10,
    font=('sans-serif', 14), 

).pack(pady=20)


ws.mainloop()

Producción:

En este ejemplo, se muestra el widget Python Tkinter Spinbox. Los datos que contiene van del 1 al 10. Los usuarios pueden hacer clic en el botón hacia arriba o hacia abajo para navegar por los datos.

Caja giratoria de Python Tkinter

Python Tkinter Spinbox validar

La opción de validación de Python Tkinter Spinbox permite validar la entrada del usuario y evita los valores no estándar.

  • De forma predeterminada, la validación está establecida en Ninguno.
  • validar y validar el comando son dos cosas que funcionan de la mano.
  • validar proporciona el modo de validación mientras que los comandos de validación activan la función o incluso eso ocurrirá.
  • El modo de validación admite las siguientes opciones:
enfoque Validar siempre que el Entry el widget obtiene o pierde el foco
concéntrate en Valide cada vez que el widget obtenga el foco.
enfoque Valide siempre que el widget pierda el foco.
llave Valide cada vez que cualquier pulsación de tecla cambie el contenido del widget.
todos Validar en todas las situaciones anteriores.
ninguna Este es el valor de opción predeterminado. Desactiva la validación. Tenga en cuenta que esta es la cadena ‘ninguno’, no el valor especial de Python Ninguno.

Modo de validación en Python Tkinter Spinbox

Leer: Cuestionario de Python Tkinter

Valor del conjunto de spinbox de Python Tkinter

En esta sección, aprenderemos sobre Python Tkinter Spinbox Set Value. Veremos cómo establecer un valor en Python Tkinter Spinbox.

  • Python Tkinter Spinbox acepta un rango de valores en forma de de_ , a o Lista y tupla.
  • En caso de que se proporcione from_, se convierte en el valor predeterminado
  • En el caso de la lista y el valor de tupla en el índice 0, se convierte en el primer valor en Python Tkinter Spinbox.
  • establecer() La función en Python Tkinter Spinbox se usa para personalizar el valor predeterminado.
  • La función Set () se aplica en la variable de texto o en la variable utilizada para almacenar Python Tkinter Spinbox.
  • En nuestro ejemplo, notará que Python Tkinter Spinbox mostrará el valor predeterminado.

Código fuente:

En este ejemplo, hemos utilizado la función set() para establecer el valor predeterminado en Python Tkinter Spinbox.

  • La función set () se aplica en la variable de texto.
from tkinter import *

def display_selected():
    Label(
        text=f'You selected {var.get()}', 
        font=('sans-serif', 14),
        bg='#6393A6'
        ).pack()

ws = Tk()
ws.title('PythonGuides')
ws.geometry('400x200')
ws.config(bg='#6393A6')

var = IntVar()
var.set(7)  # default value is 5
Spinbox(
    ws,
    textvariable=var,
    from_=1,
    to=10,
    increment=2,
    command=display_selected,
    font=('sans-serif', 18), 

).pack(pady=20)


ws.mainloop()

Producción:

En este ejemplo, hemos demostrado cómo establecer valores predeterminados en Python Tkinter. Puede ver que primero, hemos establecido el valor predeterminado en 5 y luego lo cambiamos a 7. Cada vez que se inicia la aplicación, tiene el valor predeterminado asignado.

Comando de cuadro giratorio de Python Tkinter

En esta sección, aprenderemos sobre el comando Python Tkinter Spinbox.

  • Al usar Python Tkinter Spinbox, se espera que suceda algo cuando el usuario hace clic en la tecla hacia arriba o hacia abajo en Python Tkinter Spinbox.
  • Las funciones contienen la información de una actividad y estas funciones se vinculan mediante la opción ‘comando’ en el comando Python Tkinter Spinbox.
  • En nuestro ejemplo, mostraremos el valor seleccionado cada vez que el usuario haga clic en la tecla hacia arriba o hacia abajo de Python Tkinter Spinbox.

Código fuente:

En este ejemplo, hemos creado una aplicación simple utilizando el widget Python Tkinter Spinbox.

  • La aplicación tiene una lista de frutas y se puede acceder a cada nombre de fruta usando el widget Python Tkinter Spinbox.
  • cada vez que el usuario hace clic en la flecha hacia arriba o hacia abajo, se activa la función. Esta función se asigna mediante la opción ‘comando’.
  • En nuestro caso, hemos creado una función display_selected() y le hemos pasado este nombre en la opción de comando.
from tkinter import *

def display_selected():
    msg.config(
        text=f'You selected {var.get()}', 
        font=('sans-serif', 14),
        bg='#D97904'
        )

ws = Tk()
ws.title('PythonGuides')
ws.geometry('400x200')
ws.config(bg='#D97904')

var = StringVar()
Spinbox(
    ws,
    textvariable=var,
    value=['Grapes', 'Banana', 'Mango', 'Blueberries'],
    increment=2,
    width=10,
    command=display_selected,
    font=('sans-serif', 18), 

).pack(pady=20)

msg = Label(
    ws,
    text="",
    bg='#D97904'
)
msg.pack(pady=10)

ws.mainloop()

Producción:

En este resultado, se ha pasado una lista de frutas como un valor en el widget Python Tkinter Spinbox. Cada vez que el usuario cambia a una nueva fruta, se muestra un mensaje con el nombre de la fruta seleccionada.

comando python tkinter spinbox

Comando Python Tkinter Spinbox

Python Tkinter Spinbox Obtener valor

En esta sección, aprenderemos sobre Python Tkinter Spinbox Get Value.

  • Obtener() La función se utiliza para obtener el valor del widget proporcionado por el usuario.
  • De forma predeterminada, el valor obtenido está en un tipo de cadena, pero se puede convertir a otros tipos de datos.
  • Usando Obtener() función, podemos obtener el valor seleccionado por el usuario en Python Tkinter Spinbox.
  • En nuestro ejemplo, buscaremos el valor seleccionado por el usuario y también lo mostraremos usando el widget Python Tkinter Label.

Código fuente:

from tkinter import *

def display_selected():
    Label(
        text=f'You selected {var.get()}', 
        font=('sans-serif', 14),
        bg='#6393A6'
        ).pack()

ws = Tk()
ws.title('PythonGuides')
ws.geometry('400x200')
ws.config(bg='#6393A6')

var = IntVar()
Spinbox(
    ws,
    textvariable=var,
    from_=1,
    to=10,
    increment=2,
    command=display_selected,
    font=('sans-serif', 18), 

).pack(pady=20)

ws.mainloop()

Producción:

En este ejemplo, hemos utilizado el obtener() para obtener el valor del widget Python Tkinter Spinbox y estamos mostrando el valor seleccionado usando el widget Python Tkinter Label.

python tkinter spinbox obtener

Python Tkinter Spinbox Obtener valor

Enlace de cuadro de giro de Python Tkinter

Python Tkinter admite una característica ‘vincular’ que permite vincular un evento con el widget. En esta sección, aprenderemos sobre Python Tkinter Spinbox Bind.

  • Bind tiene tres componentes: Spinbox.bind(event_name, handler, add=None)
    • nombre del evento es la actividad que desencadenará el controlador. El evento puede ser presionar, soltar, mover, etc. de un botón o cualquier otro periférico.
    • manipulador es la función asociada con el evento. En palabras simples, el controlador tiene la información de qué hacer cuando se invoca el evento.
    • agregar es Ninguno por defecto. Puede reemplazar Ninguno con el signo ‘+’. Esto reemplazará el controlador anterior con el actual. El signo ‘+’ se proporciona en el controlador actual.
  • En nuestra próxima sección, hemos explicado Bind con un ejemplo.

Evento Spinbox de Python Tkinter

Evento es cualquier actividad que sucedió. Podría ser un clic de botón, liberación, movimiento, etc. En esta sección, aprenderemos sobre Python Tkinter Spinbox Event.

  • Cada evento está vinculado con algún widget como Python Tkinter Spinbox en este caso.
  • El evento invoca el controlador o la función. En palabras simples, cada vez que ocurre un evento, se vincula una actividad con él.

Código fuente:

En este ejemplo, hemos creado una aplicación basada en GUI utilizando Python Tkinter en la que se muestra el saldo de la cuenta cada vez que el usuario hace clic en la punta de flecha.

  • sb.bind('', 14)aquí sb es la variable asignada a Python Tkinter Spinbox.
  • '' es el evento de clic izquierdo del ratón. Cada vez que el usuario hace clic con el botón izquierdo, se llama a este evento.
  • disipar es el nombre de la función.
from tkinter import *

ws = Tk()
ws.title('PythonGuides')
ws.geometry('400x200')
ws.config(bg='#45858C')

def disp(event):
    msg.config(text=f'Account Balance: {sb.get()}')

sb = Spinbox(
    ws,
    from_=1000,
    to=100000,
    increment=100,
    format="%10.2f",
    font=('sans-serif', 14)
)
sb.pack(pady=20)
sb.bind('', disp)

msg = Label(
    ws,
    text="",
    bg='#45858C',
    font=('sans-serif', 14)
)
msg.pack(pady=10)

ws.mainloop()

Producción:

Te puede interesar:  Aplicación de seguimiento de gastos usando Python Tkinter

En este ejemplo, se invoca un evento cada vez que el usuario hace clic en la punta de flecha. La función muestra el saldo de la cuenta. Esto aumenta y disminuye cada vez que un usuario hace clic en la punta de flecha. Tenga en cuenta que si el usuario presiona y mantiene presionada la punta de flecha, el valor en Python Tkinter Spinbox cambia, pero el valor en el widget Python Tkinter Label sigue siendo el mismo. Esto se debe a que el evento se invoca solo al hacer clic.

Evento de cuadro de giro de tkinter de Python

Evento Spinbox de Python Tkinter

Formato de cuadro giratorio de Python Tkinter

El spinbox de Python Tkinter proporciona una opción de Formato mediante la cual se puede asignar cualquier formato a los valores numéricos.

  • Al tratar con la base de datos monetaria, desea establecer el valor monetario en un formato 1000.00, luego puede hacerlo usando la opción de formato en Python Tkinter Spinbox.
  • Aquí 1000 puede ser cualquier valor, pero desea proporcionar 0,00 después de cualquier valor.
  • para hacerlo simplemente usa este código fomat="%10.2f"aquí 10 es el valor posicional y 2 es el número de ceros después del punto.
  • Aquí hay un ejemplo para demostrar la situación dada.
from tkinter import *

ws = Tk()
ws.title('PythonGuides')
ws.geometry('400x200')
ws.config(bg='#296B73')

Spinbox(
    ws,
    from_=1000,
    to=100000,
    increment=100,
    format="%10.2f",
    font=('sans-serif', 14)
).pack(pady=20)


ws.mainloop()

Producción:

En este ejemplo, hemos utilizado la opción de formato en el widget Python Tkinter Spinbox. Puede ver que se agregan 2 ceros después del punto en cada valor.

formato de cuadro de giro tkinter de python

Formato de cuadro giratorio de Python Tkinter

Incremento de cuadro de giro de Python Tkinter

En esta sección, cubriremos el incremento de Python Tkinter Spinbox. Aprenderemos cómo cambiar el valor de incremento.

  • De forma predeterminada, Python Tkinter Spinbox se incrementa en 1 cada vez que el usuario hace clic en la flecha hacia arriba.
  • Para personalizar esta función en Python Tkinter Spinbox, se utiliza la opción de incremento.
  • Python Tkinter Spinbox saltará al siguiente valor de acuerdo con el valor asignado en la opción de incremento.
  • por ejemplo, si el valor inicial es 1 y el valor de incremento es 2, eso significa que el cuadro de número saltará a 3, 5, 7, 9…n cada vez que haga clic en el botón hacia arriba.
  • En nuestro ejemplo, hemos mostrado lo mismo.

Código fuente:

from tkinter import *

ws = Tk()
ws.title('PythonGuides')
ws.geometry('400x200')
ws.config(bg='#64732F')

Spinbox(
    ws,
    from_=1,
    to=10,
    increment=2,
    font=('sans-serif', 18), 

).pack(pady=20)

ws.mainloop()

Producción:

En el ejemplo, hemos demostrado la incremento opción en Python Tkinter Spinbox. hemos asignado el valor de incremento a 2, lo que significa que cada vez que el usuario hace clic en el botón hacia arriba o hacia abajo, el valor salta 2 números.

Incremento de cuadro de giro de tkinter de Python

Incremento de cuadro de giro de Python Tkinter

Python Tkinter Spinbox Textvariable

En esta sección, aprenderemos sobre Python Tkinter Spinbox Textvariable.

  • Las variables de texto se utilizan cuando los datos no son fijos.
  • Textvariables funciona con todos los widgets y está disponible para todos los tipos de datos.
  • La variable de texto debe asignarse con la variable apropiada. Aquí están las opciones:
    • VarCadena() es para cadenas y caracteres.
    • IntVar() es para enteros (números no decimales)
    • Var booleana() es para verdadero o falso
    • DobleVar() es para numeros decimales
  • El widget se puede controlar con su variable de texto. En nuestro ejemplo, tenemos
from tkinter import *

def display_selected():
    msg.config(
        text=f'You selected {var.get()}', 
        font=('sans-serif', 14),
        bg='#296B73'
        )

ws = Tk()
ws.title('PythonGuides')
ws.geometry('400x200')
ws.config(bg='#296B73')

var = StringVar()
cities = ['Los Angeles', 'Chicago', 'Houston', 'Nashville', 'El Paso', 'Virginia', 'Texas', 'New York']

Spinbox(
    ws,
    textvariable=var,
    value=cities,
    increment=2,
    width=10,
    command=display_selected,
    font=('sans-serif', 18), 

).pack(pady=20)

msg = Label(
    ws,
    text="",
    bg='#296B73'
)
msg.pack(pady=10)

ws.mainloop()

Producción:

En esta salida, Python Tkinter Spinbox usa textvariable para controlar la etiqueta cambiante. Dado que el texto es String, estamos usando StringVar() en este caso.

python tkinter spinbox textvariable

Python Tkinter Spinbox Textvariable

También te puede interesar leer los siguientes artículos.

  • Marco Tkinter de Python
  • Cuadro de mensaje de Python Tkinter
  • Cómo generar recibos de pago usando Python Tkinter
  • Panel Python Tkinter
  • Python Tkinter Cronómetro
  • Cuadro de lista de Python Tkinter
  • Python Tkinter después del método

En este tutorial, hemos aprendido acerca de la Widget de cuadro de giro de Python Tkinter.

Ryley Crooks

En los Estados Unidos, Python es uno de los lenguajes más utilizados. He usado Python durante mucho tiempo y he trabajado con una variedad de bibliotecas, desde Tkinter, Pandas, NumPy, Turtle, Django, Matplotlib, Tensorflow, Scipy, Scikit-Learn, etc. Comparto contigo mi experiencia de trabajo de muchos años en el campo de la IA.

Publicaciones relacionadas

Deja una respuesta

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

Información básica sobre protección de datos
Responsable Birdie Bashirian PhD +info...
Finalidad Gestionar y moderar tus comentarios. +info...
Legitimación Consentimiento del interesado. +info...
Destinatarios No se cederán datos a terceros, salvo obligación legal +info...
Derechos Acceder, rectificar y cancelar los datos, así como otros derechos. +info...
Información adicional Puedes consultar la información adicional y detallada sobre protección de datos en nuestra página de política de privacidad.

Botón volver arriba