我正在研究python中的Tkinker。我对此有疑问。为什么我的eventButton在程序启动时总是自动运行,虽然我没有点击按钮?
class Login_frame(Tkinter.Tk):
def __init__(self, parent):
Tkinter.Tk.__init__(self,parent)
self.parent=parent
self.initUI()
def initUI(self):
frame1= Frame(self)
frame1.pack(fill=X)
lable1 = Label(frame1, text = "Username:", width=10)
lable1.pack(side = LEFT, padx =5, pady =5)
entry = Entry(frame1)
entry.pack(fill=X, padx=5, expand=True)
frame2 = Frame(self)
frame2.pack(fill=BOTH)
lable2 = Label(frame2,text="Password:", width=10)
lable2.pack(side = LEFT, anchor=N, padx=5, pady=5)
entry = Entry(frame2,show="*")
entry.pack(fill=X, padx=5, pady=5)
frame3=Frame(self)
frame3.pack(fill=BOTH)
frame4=Frame(self)
frame4.pack(fill=BOTH)
login= Button(frame4, text="Login",command = self.eventButtonLogin())
login.pack(fill=X,side = LEFT, padx=5, pady=5)
signup= Button(frame4, text="Sign up")
signup.pack(fill=X,side = LEFT, padx=5, pady=5)
def eventButtonLogin(self):
showinfo(title="alert",message="OK")
app=Login_frame(None)
app.title("Login Frame")
app.mainloop()
答案 0 :(得分:0)
您需要更换以下行:
/v2.6/{ads-pixel-id}/stats
使用:
login = Button(frame4, text="Login",command=self.eventButtonLogin())
↑↑
换句话说,请删除login = Button(frame4, text="Login",command=self.eventButtonLogin)
。
因为该行在创建按钮之前调用该方法,而不是将函数本身传递给Button构造函数。
答案 1 :(得分:0)
0