簡體   English   中英

為什么 Tkinter 不顯示按鈕?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM