Вы должны pack
кадр, если вы хотите, чтобы он отображался. Это позволит отобразить кнопку, но функция button1()
не будет работать так, как вы хотите, потому что она будет вызываться, когда она передается Button
как command
, так как вы использовали круглые скобки ()
после давая его кнопке как 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()
И если вам нужно передать аргументы любой функции, вы должны использовать lambda
, прежде чем передать ее как command
к любому Button
.
Как это:
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()