[英]Why is Tkinter not displaying Button?
import Tkinter as ass
root = ass.Tk()
frame = ass.Frame(root)
button1 = ass.Button(frame, command=button1(), text='Kushagra', width=50, height=40)
button1.pack(side=ass.LEFT)
root.mainloop()
button1()
是我制作的一個我認為不相關的函數。 運行此程序后,我得到的只是一個空白窗口。 我該如何解決?
創建框架后,您沒有打包框架小部件。 下面是修改后的代碼
import tkinter as ass
root = ass.Tk()
frame = ass.Frame(root)
frame.pack()
button1 = ass.Button(frame, text="QUIT")
button1.pack(side=ass.LEFT)
root.mainloop()
如果要顯示框架,則必須pack
框架。 這將使按鈕顯示,但函數button1()
將無法按您的意願工作,因為它會在作為command
提供給Button
時被調用,因為您在將它提供給Button
后使用了括號()
作為command
。 您只需要刪除這些括號。
像這樣:
import tkinter as ass
def button1():
return
root = ass.Tk()
frame = ass.Frame(root)
frame.pack()
button1 = ass.Button(frame, command=button1, text='Kushagra', width=50, height=40)
button1.pack(side=ass.LEFT)
root.mainloop()
如果您需要將參數傳遞給任何函數,那么您應該在將其作為command
給任何Button
之前使用lambda
。
像這樣:
import tkinter as ass
def test(a):
print(a)
root = ass.Tk()
frame = ass.Frame(root)
frame.pack()
button1 = ass.Button(frame, command=lambda: test(1), text='Kushagra', width=50, height=40)
button1.pack(side=ass.LEFT)
root.mainloop()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.