首页 > 解决方案 > 错误:简单登录 GUI 的“分配函数调用的结果,其中函数没有返回”

问题描述

我正在尝试制作一个具有“双重身份验证”的简单登录 GUI。我在第 24 行遇到问题,出现错误“分配函数调用的结果,函数没有返回”

这是代码:

将 tkinter 导入为 tk

def test_my_button():
    frame_auth.tkraise()

root = tk.Tk()
root.wm_geometry("200x200")

frame_login = tk.Frame(root)
frame_login.grid(row = 0, column = 0)

lbl_username = tk.Label(frame_login, text='Username:')
lbl_username.pack()

ent_username = tk.Entry(frame_login, bd=3)
ent_username.pack(pady=5)

lbl_password = tk.Label(frame_login, text="Password:")
lbl_password.pack()

ent_password = tk.Entry(frame_login, bd=3, show = "*")
ent_password.pack(pady=5)

###ERROR HERE###
btn_login = tk.Button(frame_login, text = "Login", command = test_my_button).pack()

frame_auth = tk.Frame(root)
frame_auth.grid(row = 0, column = 0)

frame_login.tkraise()

root.mainloop()

感谢所有帮助!

标签: pythonpython-3.xpython-3.7

解决方案


这是一个 linter 警告,而不是错误。它告诉您它pack不会返回任何内容,因此将其分配给变量是没有意义的。

分配后,您希望在pack自己的线路上调用btn_login

btn_login = tk.Button(frame_login, text = "Login", command = test_my_button)
btn_login.pack()

推荐阅读