首页 > 解决方案 > 为什么我不能在 tkinter 中使用 get 属性?

问题描述

from tkinter import *
root = Tk()
root.geometry("850x900")
def pri():
    user = e.get()
    print(user)
e = Entry(root).pack()
b = Button(root, text = "Submit", command=pri).pack()
root.mainloop()

当我运行此代码时,我收到以下错误:

“AttributeError:‘NoneType’对象没有属性‘get’”

标签: pythontkintertkinter-entry

解决方案


问题是您试图将不返回任何内容的函数的结果分配给变量(pack)。您可以先将Entry小部件分配给变量e,然后打包。以下代码有效:

from tkinter import *

root = Tk()
root.geometry("850x900")
def pri():
    user = e.get()
    print(user)
e=Entry(root)
e.pack()
Button(root, text = "Submit", command=pri).pack()
root.mainloop()

推荐阅读