我有一个python中的tkinter输入框,但我可以';你不能把它输入我的代码吗?
下面是我的代码:我有一个python中的tkinter输入框,但我可以';你不能把它输入我的代码吗?,python,tkinter,tkinter-entry,Python,Tkinter,Tkinter Entry,下面是我的代码: from tkinter import * login = Tk() username_1 = Entry() username_1.pack(side=TOP) input_username = login.username_1.get("1.0", END) username = input_username loginInfo = {"user1": "blue", "user2": "yellow", "user3": "green"} if username in
from tkinter import *
login = Tk()
username_1 = Entry()
username_1.pack(side=TOP)
input_username = login.username_1.get("1.0", END)
username = input_username
loginInfo = {"user1": "blue", "user2": "yellow", "user3": "green"}
if username in loginInfo:
print('Username correct!')
login.mainloop()
这是我的错误:
'AttributeError: '_tkinter.tkapp' object has no attribute 'username_1'':
你能提供你的代码应该做什么的信息吗 如果您只是想避免此错误,请为此更改第6行:
input_username = username_1.get()
创建小部件时,您正在创建根窗口的子窗口。但是,这些子项不是根窗口的属性。因此,
login.username_1
是无效的,正如错误告诉您的那样
在这种特定情况下,小部件只是username\u 1
(例如:input\u username=username\u 1.get(“1.0”,END)
)。但是,由于以下原因,即使这样也不起作用:
- 条目的
方法不接受参数。您需要执行get
username\u 1.get()
- 在创建条目大约一毫秒后,在用户有机会输入任何内容之前,您正在调用
get
使用GUI工具包,您无法想象程序从上到下线性运行。相反,您将事情设置为最初出现,然后需要编写响应按键和按钮单击等事件的函数。例如,您可能希望创建一个标签为“Login”的按钮,该按钮调用一个函数来检查有效凭据。您将在该函数中调用
get()
方法 顺便说一下,语法.get(“1.0”,END)
用于文本
小部件。创建条目时,必须在参数中为其指定登录名,如:username\u 1=Entry(login)