【发布时间】:2020-06-23 08:53:03
【问题描述】:
我正在尝试熟悉 tkinter,并创建了一个虚拟“应用程序”,它有多个框架,每个框架都有多个小部件。
例如:
import tkinter as tk
if __name__ == "__main__":
window = Tk()
window.title("somename")
window.geometry("400x400")
frame1 = tk.Frame(window)
frame1.grid(row = 0, column = 0)
label1 = tk.Label(frame1, text = "this is frame1")
label1.pack()
button1 = tk.Button(frame1)
button1.pack()
frame2 = tk.Frame(window)
frame2.grid(row = 1, column = 0)
label2 = tk.Label(frame2, text = "this is frame2")
label2.pack()
button2 = tk.Button(frame2)
button2.pack()
到目前为止,这种格式有效,但是它非常混乱,我还需要使用命令的按钮的返回值(例如 askopenfilename 中的文件名,CheckButton 中的值等),我认为 OOP 将是一个不错的选择,因为它封装了信息,但是,我对 OOP 不是很熟悉,因为我主要使用 python 在 jupyter 中编写脚本。
我的问题是,如果我应该使用类,我应该如何划分类?我应该将每个帧与其中的元素分开作为一个对象,还是其他什么?
编辑:我应该说每个框架都有一个标签但不同类型的小部件。谢谢@Henry Yik 的链接,但我的问题是,当框架之间的唯一相似之处是框架本身和标签时,是否有必要使用类,仅此而已。
【问题讨论】:
-
我认为this post 是您要找的。span>