Python Tkinter button


    refreshButton = Button(frameList, text ="Refresh",command = print("pressed"))
    refreshButton.place(x=50, y=50)

为什么我每次按下按钮时都不会打印出"按"打印出来?

只有一次?

没有错误消息。问题是打印("按")不执行。

使用 lambda

refreshButton = Button(frameList,
    text ="Refresh",
    command = lambda: print("pressed")
  )

一个按钮命令不能提供任何参数,除非您使用lambda或其他功能。相反

def Refresh(*args):
    print("pressed")
    # do stuff
refreshButton = Button(frameList, text ="Refresh",command = Refresh)
refreshButton.place(x=50, y=50)

如果您要做的就是print("pressed"),那么这是替代解决方案。lambda将捕获按钮给出的任何参数,让您使用自己的参数调用函数:)

refreshButton = Button(frameList, text ="Refresh",command= lambda *args: print("pressed"))

相关内容

  • 没有找到相关文章

最新更新