这个问题在这里已有答案:
我无法在我的tkinter列表框中“插入”一个字符串 . 我的代码是:
from Tkinter import *
from tkFileDialog import askopenfilenames
def ImportFiles():
Tk().withdraw()
filenames = askopenfilenames()
for f in filenames:
listbox1.insert(END, f)
return
root = Tk()
root.geometry("500x800")
listbox1 = Listbox(root).grid(row=1, sticky=W, padx=20, pady=20)
button1 = Button(root, text='Import', command=ImportFiles).grid(row=2, sticky=W, padx=20)
root.mainloop()
当我运行这段代码时,GUI弹出正常 . 我按下按钮,然后按预期打开文件对话框 . 然后,当我选择一些文件并按“确定”代码炸弹 . 我收到以下错误:
档案"C:\Python27\lib\lib-tk\Tkinter.py",第1536行, call
return self.func(* args)
在ImportFiles中输入第10行的文件“... / pyGUI_01.py”
listbox1.insert(END,f)
AttributeError:'NoneType'对象没有属性'insert'
我不明白 . 我将对象'listbox1'设置为TK Listbox . 我的IDE中没有迹象表明命令'insert'无效(PyCharm) . 我究竟做错了什么?