我制作了一个文本框和一个按钮。单击该按钮时,它应显示文本框中的内容。
我已经按照教程进行了练习,但是我无法让它工作,所以我来到这里找到了thread其他人有这个问题,但我仍然无法弄清楚为什么我的这个错误。
AttributeError: 'NoneType' object has no attribute 'get'
这是代码。
def send_feedback(*args):
feedback = self.MyEntryBox.get("0.0",'END-1c')
print(feedback)
self.MyEntryBox = Text(SWH, width=80, height=20, bd=5, fg="#0094FF",relief = RIDGE).place(x=200,y=400)
SubmitButton = Button(SWH, text="Submit", fg="White", bg="#0094FF", font=("Grobold",20),command=send_feedback).pack()
答案 0 :(得分:3)
您要将None
分配给SubmitButton
和self.MyEntryBox
,因为这是widget.pack()
和widget.place()
返回的内容。
相反,为每个小部件创建两个单独的行,因此您将小部件分配给可访问的名称然后将小部件放置在UI中:
self.MyEntryBox = Text(SWH, width=80, height=20, bd=5, fg="#0094FF", relief = RIDGE)
self.MyEntryBox.place(x=200, y=400)
SubmitButton = Button(SWH, text="Submit", fg="White", bg="#0094FF",
font=("Grobold", 20), command=send_feedback)
SubmitButton.pack()
另外,SubmitButton
可能应该是MyEntryBox
之类的实例属性,如果你pack
编辑或place
一切都可能会更容易,而不是尝试混合搭配。