【发布时间】:2020-04-01 14:46:36
【问题描述】:
我创建了几个框架,我想将它们全部打包到一个主框架中。因此,我可以将它们作为一个组并添加到 ttk.Notebook 的选项卡中。
但是,当我先将班级的主人设置为其他框架,然后将主人添加到 ttk.Notebook 时,选项卡总是无法显示我的小部件!但是如果我直接将我的框架添加到笔记本上,它就可以正常工作。
这是我的代码的 sn-p:
import tkinter as tk
from tkinter import ttk
class PathWindow(tk.Frame):
def __init__(self, parent, *args, **kwargs):
tk.Frame.__init__(self, *args, **kwargs)
self.path_label = ttk.Label(self, text='PathWindow Label').pack()
root = tk.Tk()
nb = ttk.Notebook(root)
nb.pack()
path_frame1 = PathWindow(nb)
nb.add(path_frame1, text='path_frame1')
frame3 = tk.Frame(nb)
path_frame2 = PathWindow(frame3)
path_frame2.pack
btn3 = tk.Button(path_frame2, text='btn in path_frame2')
btn3.pack()
nb.add(frame3, text='frame3, contain path_frame2')
root.mainloop()
frame3 似乎从不显示内容!
如果我使用默认的 tk.Frame 类作为其他 tk.Frame 的主人,它工作正常,所以我觉得我的类出了点问题。但是我说不出来! 谁能告诉我这里出了什么问题?
【问题讨论】: