Когда я «забываю» или «добавляю» виджет в виджет PanedWindow перед изменением размера корневого окна, размер корневого окна изменяется в результате этих действий. Но после изменения размера корневого окна указателем мыши «забыть» или «добавить» больше не меняют размер окна, а изменяют свои размеры только «подокна» PanedWindow.
Как я могу сохранить размер корневого окна стабильным во время этих действий даже до изменения размера корневого окна?
Это мой пример кода:
import tkinter as tk
from tkinter import ttk
state = "shown"
def hide_show(paned, canvas):
global state
if state=="shown":
paned.forget(canvas)
state = "hidden"
else:
paned_window.add(canvas, weight= 1)
state = "shown"
root = tk.Tk()
paned_window = ttk.PanedWindow(root, orient=tk.HORIZONTAL,)
button = ttk.Button (root, text="hide/show", command=lambda: hide_show(paned_window, canvas2))
paned_window.grid(row=0, sticky=(tk.W, tk.E, tk.S, tk.N))
button.grid (row=1, sticky=tk.W)
root.rowconfigure (0, weight=1)
root.rowconfigure (1, weight=0)
root.columnconfigure(0, weight=1)
canvas1 = tk.Canvas(paned_window, height=100, width=100, bg="red")
canvas1.grid()
paned_window.add(canvas1, weight= 1)
canvas2 = tk.Canvas(paned_window, height=100, width=100, bg="green")
canvas2.grid()
paned_window.add(canvas2, weight= 1)
root.mainloop()
Подробнее здесь: https://stackoverflow.com/questions/790 ... anedwindow