Red de conocimiento informático - Problemas con los teléfonos móviles - Explicación detallada del control de cuadro de lista en el control tkinter de Python

Explicación detallada del control de cuadro de lista en el control tkinter de Python

import?tkinter

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()