В течение нескольких дней я пытался придумать, как просто поместить сетки в сетки объектов. У меня есть два фрейма (которые, я полагаю, являются виджетами в Tk?). Я добавляю один к другому, но положение виджетов его, похоже, не соответствует родительским виджетам (и он просто перезаписывает их).
вот мой MCVE
import tkinter as tk
class TestDoubleNested(tk.Frame):
def __init__(self, master=None):
super().__init__(master)
self.grid()
self.test_label = tk.Label(text="AAAAAAAAA")
self.test_label.grid(row=0, column=0)
class TestNested(tk.Frame):
def __init__(self, master=None):
super().__init__(master)
self.grid()
self.test_label = tk.Label(text="top_level_test_label")
self.test_label.grid(row=0, column=0)
self.test_label2 = tk.Label(text="top_level_test_label2")
self.test_label2.grid(row=0, column=1)
# expected to be in 3rd column...
self.test = TestDoubleNested(master)
self.test.grid(row=0, column=4)
test = TestNested()
test.master.title("Test Example")
test.master.maxsize(1000, 400)
test.master.wm_geometry("400x300")
test.mainloop()
Независимо от того, как я перемещаюсь по вызовам self.grid () или меняю содержимое столбца, отображение остается прежним:
Как видите, AAAAAAAA отображает поверх другого виджета из родительского элемента, где в идеале он должен отображаться сбоку от всего.