top of page
Foto del escritorJaime Franco Jimenez

Spinbox

Similar a un cuadro de texto , pero también incorpora dos botones para aumentar o disminuir su contenido numérico.


Veamos un ejemplo, igual que en ejemplos anteriores, nos traemos Tkinter, y, creamos la variable raíz, y, damos un ancho, y, un alto.


Creamos una etiqueta, igualamos a Label, como parámetro text, ponemos elija hamburguesa, cerramos paréntesis, ponemos punto, ponemos grid, añadimos el parámetro row e igualamos a 0, añadimos el parámetro, column e igualamos a 0.


Creamos otra variable, igualamos a Spinbox, usamos el parámetro from_, que es donde empezar, voy a poner 0, usamos el parámetro, to, que es donde terminar, voy a poner 3, damos un ancho de 5.


En la siguiente línea, añadimos grid, como row, voy a poner 0, como column, voy a poner 1, para que aparezca al lado de eti1.


Ejecutamos, y, vemos que aparece eti1 al lado de spin.


De forma predeterminada, incrementa de 1 en 1, pero, podemos usar el argumento increment para establecer el incremento, por ejemplo, lo voy a establecer en 0.5.


Si queremos que cuando llegue al último valor al incrementar comience desde el primer valor, y, cuando estemos en el primer valor y decrementamos, aparezca el ultimo valor, usamos el parámetro wrap e igualamos a True.


Centramos al centro.


Usamos el parámetro font, ponemos el tipo de letra Arial, y, un tamaño de 12.


En estos momentos, podemos escribir en el Spinbox, poner letras o números, cosa que no nos interesa, pero, podemos ponerlo de solo lectura, para ello, añadimos el parámetro state e igualamos a readonly.


Podemos indicar los valores numéricos a tener, para ello, usamos el parámetro values, y, entre paréntesis, ponemos los valores, debemos que quitar los parámetros from y to.


Si queremos rellenar el Spinbox con los meses, creamos una variable, entre paréntesis, ponemos los meses, y, en el parámetro values, ponemos el nombre de la variable creada.


Vamos a ver otro ejemplo, se trata de que vamos a tener dos Spinbox, el primer Spinbox, va a contener tres colores que van a ser colores de fondo, el segundo Spinbox va a tener dos colores, que van a ser colores de letras.


Habrá dos botones, el primer de ellos, cambia el color de fondo del primer Spinbox, y, el segundo botón cambia el color de letra del primer Spinbox.


Empecemos…


Nos traemos todo de Tkinter, creamos una variable llamada raíz, damos una geometría de 180 pixeles de ancho y 60 pixeles de alto.


Creamos una variable, igualamos a Spinbox, lo colocamos en la raíz, damos un ancho de 8, usamos el parámetro values, entre paréntesis, ponemos los colores "Green","Blue","Yellow","Orange","Purple", usamos el parámetro wrap e igualamos a True.


Usamos grip, como parámetro row, ponemos 0, como parámetro column, ponemos 0.


Probamos y verificamos el Spinbox.


Creamos el segundo Spinbox, que va a tener la misma configuración que el primer Spinbox, lo único que va a cambiar es el parámetro values que va a tener los valores White y Black, y, lo colocamos en la columna 1.


Probamos.


Creamos un botón, como text, ponemos Cambiar fondo, lo colocamos en la fila 4, y, columna 0.


Creamos otro botón, como text ponemos Cambiar letra, lo colocamos en la fila 4, y, columna 1.


Probemos.


Creamos dos variables, una llamada colorfondo, y, otra llamada colorletra, e, igualamos a StrinVar().


Vamos a spin, añadimos textvariable e igualamos a colorfondo, en spin2, agregamos también textvariable e igualamos a colorletra.


Esto quiere decir que colorfondo va a valer cada elemento que seleccionamos del primer Spinbox, y, colorletra, va a valer cada elemento que se seleccione del segundo Spinbox.


Vamos a botón, añadimos el parámetro command e igualamos a cambiarfondo, vamos a boton2, añadimos command e igualamos a cambiar letra, estas funciones la agregaremos ahora.

Creamos una función llamada cambiarfondo, en la siguiente línea, ponemos:


Toma el valor de colorfondo, que es el valor que este seleccionado, cosa que se hace con el método get, y, dicho color se lo asigna a background, que es el color de fondo.


Agregamos otro método, lo llamamos cambiarletra, ponemos:


Va a tomar el valor seleccionado y lo va a asignar a “fg” que es el color de letra.


Pues, solo queda probar.



Miguel Angel Franco

4 visualizaciones0 comentarios

Comments


bottom of page