在定义函数问题之前,程序运行良好,因为它没有从用户输入中获取值并将其显示给我,然后错误也来了。
from tkinter import *
from tkinter import ttk
root = Tk()
root.title("Social Network - Login")
frame = ttk.Frame(root) #define new frame
frame.grid(row=2,column=1)
frame.config(height=200, width=200, relief=RIDGE, padding=(10,10))
l1 = ttk.Label(frame, text="User name").grid(row=0, column=0)
etUserName = ttk.Entry(frame, width=20).grid(row=0, column=1)
l2 = ttk.Label(frame, text="Password").grid(row=1,column=0)
etpassword = ttk.Entry(frame, width=20, show="*").grid(row=1, column=1)
buLogin = ttk.Button(frame,text="Login").grid(row=2,column=1)
def BuClick():
print("Username: {},Password: {}".format(etUserName.get(),etpassword.get()))
buLogin.config(command=BuClick)
root.mainloop()
配置中发生错误
buLogin.config(command=BuClick)
相同的问题已经不能直接解决我的问题,我检查了类似的问题,但是找不到答案,这就是为什么我发布此问题。
答案 0 :(得分:0)
问题似乎可以追溯到这一行
buLogin = ttk.Button(frame,text="Login").grid(row=2,column=1)
我认为.grid()不返回任何东西。你可以这样尝试吗?
buLogin = ttk.Button(frame,text="Login")
buLogin.grid(row=2,column=1)
理想情况下,您应该像这样更改grid()
的所有用法。
这应该可以,我还没有测试过。请让我们知道结果。
编码愉快:)