我无法在tkinter中获取列表框中所选项目的索引值

时间:2019-10-25 09:51:43

标签: tkinter listbox python-3.6

我正在使用数据库在Tkinter Listbox上工作,我无法在列表框中获取所选项目的索引值

def admin_get():
    global selection
    win = Tk()
    win.geometry('500x400')
    listbox1 = Listbox(win,selectmode=SINGLE,width=60)
    listbox1.place(x=50,y=100)

    cursor.execute("SELECT * FROM admin")
    for i in cursor:
        listbox1.insert(END,i)
        #print(i)

    button = Button(win, text='change state', command=state)
    button.place(x=90, y=300)
    selection = listbox1.curselection(ACTIVE)
    win.mainloop()
def state():
    #messagebox.showinfo("alert",'Changed')
    print(selection)

1 个答案:

答案 0 :(得分:0)

函数listbox1.curselection()不带参数。 根据它的文档

  

[r]返回一个包含从0开始计数的选定元素的行号的元组。如果未选择任何内容,则返回一个空元组。

其他: 您可以使用以下命令检测元组是否为空

if selected:
    #some code

仅当选择列表框的一个项目时,该代码才会执行​​。