AttributeError:类型对象'Message'没有属性'get'
代码:
root = Tk()
frame = Frame(root)
labelText = StringVar()
display = Label(frame, textvariable=labelText)
labelText.set("Connecting to the server...")
display.pack()
frame.pack()
display.update()
def Submit_Message(event):
Message_Get = Message.get()
print(Message_Get)
def run_code_1():
print("Enter Message to send!")
Message = StringVar()
Message = Text(root)
Submit_Data_Button = Button(root, text="Submit")
Submit_Data_Button.bind("<Button-1>", Submit_Message)
Submit_Data_Button.pack()
Message.pack(expand=YES, fill=BOTH)
run_code_1()
root.mainloop()
Tkinter回调Traceback中的异常(最近一次调用最后一次):
调用中的文件“ C:\ Python \ lib \ tkinter__init __。py”,行1699 返回self.func(* args)文件“ D:\ python_projects \ trial2.py”,第42行,在 提交留言 Message_Get = Message.get()AttributeError:类型对象'Message'没有属性'get'进程返回0(0x0)执行时间:5.439 s按任意键 接着说 。 。
答案 0 :(得分:0)
在def方法中,您需要说出消息是什么。您只能在方法之外执行此操作。消息尚未在Submit_Message方法中初始化,因此它没有任何属性。例如,您可以将其设置为全局
答案 1 :(得分:0)
在您的代码中,您正在创建一个名为Message
的 local 变量。但是,Submit_Message
无法看到该局部变量。相反,它认为Message
是您通过from tkinter import *
如果需要在其他上下文中访问本地Message
,则需要通过在global Message
内添加run_code_1
使其全局。