from tkinter import *
root = Tk()
list_box = Listbox(root, selectmode = "multiple")
for i in range(10):
list_box.insert(i, str(i) + "item" )
list_box.pack()
mainloop()
如何提取所选项目?
我尝试了list_box.get(list_box.curselection()[0])
,但总是遇到TclError: invalid command name
错误
答案 0 :(得分:2)
您忘记提供完整的代码,尤其是尝试提取所选项目的确切位置。
我在按钮中添加了一些代码来执行此操作,在这里似乎工作正常:
该代码就是您的代码,我只是在调用mainloop()
之前添加了此代码:
# ... your code here ...
import tkinter.messagebox as tkmsg
def clicked():
selected = [list_box.get(pos) for pos in list_box.curselection()]
tkmsg.showinfo(title='Selected',
message='Items selected: {}'.format(', '.join(selected)))
Button(root, text='Go!', command=clicked).pack()
mainloop()