使用grid()函数的“ AttributeError”

时间:2019-08-12 17:24:06

标签: python user-interface tkinter

我在使用网格时出错:“ AttributeError:'NoneType'对象没有属性'grid'”。

这是我的代码:


    root = tk.Tk()
    root.configure(bg="black")

    # Creates labels
    tk.Label(root, image=logo1).pack()

    # Creates buttons
    tk.Button(root, image=logo2, command=root.destroy).pack().grid(row=0, column=0)
    tk.Button(root, image=logo3, command=root.destroy).pack().grid(row=0, column=0)

    root.mainloop()


1 个答案:

答案 0 :(得分:1)

您同时使用两个包装管理器,但使用它们是错误的。

pack调用将返回None,而您正在尝试将网格调用分配给None。

这样做:

tk.Button(root, image=logo2, command=root.destroy).grid(row=0, column=0)
tk.Button(root, image=logo3, command=root.destroy).grid(row=0, column=0)

或者使用包管理器而不是网格:

tk.Button(root, image=logo2, command=root.destroy).pack()
tk.Button(root, image=logo3, command=root.destroy).pack()