【问题标题】:Tkinter Class and Button useTkinter 类和按钮使用
【发布时间】:2019-12-18 14:57:34
【问题描述】:

我很难找到一种方法来使用 tkinter 中的按钮完成我想要的事情。我正在为自己编写一个多帧 tkinter 应用程序,每个帧都是一个类,每个类都有我在 __init__ 方法中放置在屏幕上的按钮。我在尝试将按钮和命令功能链接在一起时遇到问题。

例子:

class frameHome:
    def __init__(self,parent, controller)
        self.frame=tk.Frame(parent)
        self.buttonOne=tk.Button(self.frame,text="Click Me") # I want to add the command here
        self.buttonOne.pack()
    def buttonOneClick():
        print("You clicked me")

当我在 tk.Button() 调用中添加命令时,它说 buttonOneClick 未定义。我看过的一个视频说要在代码顶部添加该功能。我想将该函数保留为组织类的方法,并将 init 保留在类的顶部,并且想知道是否有一种方法可以创建对该函数的引用,所以我可以将它作为 init 方法之后的方法,并能够在 init 方法中调用它,因为我希望 init 方法来创建 gui 和链接该类/框架的所有小部件命令。

感谢您提供的任何时间和帮助

【问题讨论】:

  • 应该是command=self.buttonOneClickbuttonOneClick()应该定义为def buttonOneClick(self):
  • 天哪,我觉得自己很傻。我忘记了自我参数。非常感谢您对这个愚蠢的错误感到抱歉。

标签: python tkinter


【解决方案1】:

在您的命令中,您是否将命令写为 command=buttonOneClick()?如果是这种情况,那么您应该将其替换为 self.buttonOneClick()

【讨论】:

    【解决方案2】:

    我需要的答案是我忘记了 buttonOneClick(self, msg) 方法中的 self 参数。

    【讨论】:

      猜你喜欢
      • 2019-07-03
      • 1970-01-01
      • 2013-07-15
      • 2018-08-15
      • 2021-04-14
      • 2017-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多