我用Tkinter构建了一个应用程序,它根据文本框中输入的团队向标签显示统计信息。应用程序可以工作,但我的代码有600行长,其中大部分都在初始化标签。大多数标签共享相同的格式(创建一个label变量,创建一个label,使用grid定位标签),所以我认为应该有一种方法可以创建一个构造函数类,该类将返回一个带有几个参数的新变量。不幸的是,到目前为止我一直没有成功,主要是因为我几乎没有OOP设计经验。最好的办法是什么?以下是我要替换的代码的两个主要部分:
self.team2RecordlabelVariable = Tkinter.StringVar()
team2Recordlabel = Tkinter.Label(self,textvariable=self.team2RecordlabelVariable,anchor='e', fg='white', bg="black")
team2Recordlabel.grid(column = rColLStart, row = 1, columnspan = colRSpan, padx=(2,10), pady=(1,20), sticky = 'E')
以及
^{pr2}$
如果只想创建一个自定义标签,可以使用一个类,但是IMO如果您还想调用},因为这限制了你使用它的方式。在
grid
,那么最好使用函数。一个小部件永远不应该自己调用grid
、pack
或{由于您希望创建标签并同时调用
grid
,因此您只需要一个简单的helper函数。在我的示例中,我还假设您不需要为每个标签使用StringVar
,因为您没有显示任何需要它的代码。在相关问题 更多 >
编程相关推荐