En este artículo, discutiremos cómo obtener el índice de las opciones seleccionadas en el cuadro combinado de Tkinter .
Un cuadro combinado es una combinación de un cuadro de lista y un widget de entrada. Este widget permite a los usuarios seleccionar un valor de un conjunto de valores.
Sintaxis:
def get_index(*arg): Label(app, text="The value at index " + str(combo.current()) +\ " is" + " " + str(var.get()), font=('#Font of Text')).pack() var = StringVar() combo = ttk.Combobox(app, textvariable=var) var.trace('w', get_index)
Implementación paso a paso:
Paso 1: en primer lugar, importa la biblioteca Tkinter.
from tkinter import * from tkinter import ttk
Paso 2: Ahora, crea una aplicación GUI usando Tkinter.
app=Tk()
Paso 3: A continuación, configure la geometría de la aplicación.
app.geometry("#Dimensions of the app")
Paso 4: Además, cree una función para borrar el Combobox.
def clear(): combo.set('')
Paso 5: Más tarde, cree una función para establecer el índice de la opción seleccionada en Combobox.
def get_index(*arg): Label(app, text="The value at index " + str(combo.current())\ + " is" + " " + str(var.get()), font=('#Font of Text')).pack()
Paso 6: Además, cree una tupla de algunos valores para agregar en el Combobox.
months = ('January', 'February', 'March', 'April', 'May', 'June', 'July','August','September','October', 'November','December')
Paso 7: luego, cree un widget de cuadro combinado y agregue los valores en ese cuadro combinado.
var = StringVar() combo = ttk.Combobox(app, textvariable=var) combo['values'] = months combo['state'] = 'readonly' combo.pack(padx=#x-axis padding value, pady=#y-axis padding value)
Paso 8: En mayor medida, establezca el seguimiento para la variable dada.
var.trace('w', get_index)
Paso 9: además, cree un botón para borrar el valor de texto del cuadro combinado seleccionado.
button = Button(app, text="Clear", command=clear) button.pack()
Paso 10: Finalmente, haz un bucle infinito para mostrar la aplicación en la pantalla.
app.mainloop()
Ejemplo:
Python3
# Python program to get index of selected # option in Tkinter Combobox # Import the libraries tkinter from tkinter import * from tkinter import ttk # Create a GUI app app = Tk() # Set the geometry of the app app.geometry("600x400") # Function to clear the Combobox def clear(): combo.set('') # Function to print the index of selected option # in Combobox def get_index(*arg): Label(app, text="The value at index " + str(combo.current()) + " is" + " " + str(var.get()), font=('Helvetica 12')).pack() # Define Tuple of months months = ('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December') # Create a Combobox widget var = StringVar() combo = ttk.Combobox(app, textvariable=var) combo['values'] = months combo['state'] = 'readonly' combo.pack(padx=5, pady=5) # Set the tracing for the given variable var.trace('w', get_index) # Create a button to clear the selected combobox # text value button = Button(app, text="Clear", command=clear) button.pack() # Make infinite loop for displaying app on # the screen app.mainloop()
Producción: