【发布时间】:2026-01-10 10:45:01
【问题描述】:
我遇到了几个比我的问题更复杂的问题的解决方案,所以如果这是重复的,我深表歉意,但在这种情况下我似乎无法调整其他解决方案来满足我的需求。
我需要显示一个填充的列表框,并使用多选方法将选择返回为一个列表,以便以后拆分和操作。
这是我目前所拥有的:
from Tkinter import *
def onselect(evt):
w = evt.widget
index = int(w.curselection()[0])
value = w.get(index)
selection = [w.get(int(i)) for i in w.curselection()]
return selection
master = Tk()
listbox = Listbox(master,selectmode=MULTIPLE)
listbox.pack()
for item in ["one", "two", "three", "four"]:
listbox.insert(END, item)
listbox.bind('<<ListboxSelect>>', onselect)
mainloop()
如何正确地将选择变量存储为列表?
【问题讨论】:
-
到目前为止你的代码有什么问题
-
也许我没有访问选择列表吧?我不知道如何访问它,我需要使用列表的值创建目录。
-
你是说 onselect 没有被调用?
-
我相信是的,如果我在 onselect 中添加“打印选择”,它会在每次更改时打印一条显示选择的行。我需要在函数外部访问它以自动创建名称与所选值相同的目录。
-
既然你似乎没有使用任何类结构,就使用一个全局变量