Explicación detallada del control de cuadro de lista en el control tkinter de Python
win=tkinter.Tk()
win.title('Primera ventana')
win.geometry()
'''
Control Listbox: puede contener uno o más cuadros de texto
Asignación: mostrar una cadena en la pequeña ventana del control Listbox
'''
# 1: Utilice selectmode=tkinter.BROWSE para admitir el movimiento del mouse en la posición seleccionada.
Cree un cuadro de lista y agregue varios elementos
'''
lb= tkinter.Listbox(win, selectmode=tkinter.BROWSE)
lb.pack ( )
for?item?in?['good', 'nice', 'beautiful']:
#1: agregar
#Presione Agregar Agregar elementos secuencialmente (agregar hacia atrás)
lb.insert(tkinter.END, item)?
#Agregar al principio (agregar hacia adelante)
lb .insert (tkinter.ACTIVE,'cool')?
#Agregar la lista como elemento
#lb.insert(tkinter.END,['cool','sunk' ]) ?delete(1)
#3: Seleccione el índice comenzando desde 0 (seleccione todos los elementos desde el índice inicial hasta el índice final), el parámetro 1 es el índice inicial, el parámetro 2 es el índice final, si Si no se especifica el parámetro 2, solo se seleccionará el contenido del primer índice
#lb.get(1,2))
#7: Devuelve el elemento de índice seleccionado actualmente (obtener índice) en lugar de devolver el contenido
#print(lb.curselection())
#8: ¿Estás seguro? ¿Si se selecciona una opción, devuelve un tipo booleano?
#print(lb.select_includes(1))
#9: Vincular variables
# lbv= tkinter.StringVar()
#9.1? Imprimir todas las opciones (tupla) en la lista actual
#print(lbv.get())
#9.2?Establecer opciones (tupla)
# lbv .set(('1', '2'))
#10: evento de enlace (toma un argumento, pero no lo pasa)
'''
def?myPrint(evento):
print(lb.get(lb.curselection()))
lb.bind('lt;Double-Button-1gt ; ', myPrint)
#11: Barra de desplazamiento
sc=tkinter.Scrollbar(win)
sc.pack(side=tkinter.RIGHT, fill =tkinter .Y)
lb.pack(side=tkinter.LEFT, fill=tkinter.BOTH)
#Asociación
lb.configure( ysscrollcommand= sc. set)? (El método de configuración también es válido)
sc['command']=lb.yview?
'''
'''# Dos: no se admite el movimiento del mouse para seleccionar la posición, se admite presionar el mouse después de la posición seleccionada, use selectmode=tkinter.SINGLE, cree un cuadro de lista, agregue algunos elementos, similar
ar a (uno)
lb=tkinter.Listbox(win, selectmode=tkinter.SINGLE, listvariable=lbv)
lb.pack()
para ?item?in?['bueno', 'agradable', 'hermoso']:
lb.insert(tkinter.Listbox(win, selectode=tkinter.SINGLE, listvariable=lbv)
lb.pack()
for?END, item)
'''
#tres: En la función uno, puedes usar selectmode = tkinter.EXTENDED habilita el cuadro de lista para admitir movimiento y control (implementando selecciones continuas y múltiples)
'''
lb=tkinter.Listbox(win, selectmode=tkinter.EXTENDED)
'''
lb=tkinter.Listbox(win, selectmode=tkinter.EXTENDED).
lb=tkinter.Listbox(win, selectode=tkinter.EXTENDED)
for?Scrollbar(win)
sc.pack(side=tkinter.RIGHT , fill=tkinter.Y)
lb. configure(yscrollcommand=sc.set)
lb.pack(side=tkinter.LEFT, fill=tkinter.BOTH)
sc['command']=lb.yview
'''
# IV: En la segunda función, use selectmode=tkinter.MULTIPLE para admitir múltiples selecciones< / p>
lb=tkinter.Listbox(win, selectmode=tkinter.MULTIPLE)
for?item?in?['Bueno', 'Bueno', 'Hermoso', 'Bueno1', 'Bueno 1', 'Bonita 1', 'Buena 2', 'Buena 2', 'Bonita 2', 'Buena 3', 'Buena 3', 'Bonita 3']:
lb. insertar(tkinter .END, elemento)
lb.pack()
win.mainloop()