Как отцентрировать окно tkinter и сохранить поведение «подходят детям»?

У меня есть окно, содержание которого меняется. Иногда содержимое больше окна, поэтому окно расширяется, чтобы соответствовать ему.с детьми. Тем не менее, когда я центрирую окно, используя вызовгеометрия"окно больше не изменяет размеры. Ниже вы найдете код, который иллюстрирует это.

Если вы закомментируете отложенный вызов функции center (), выВы заметите, что окно расширяется, чтобы соответствовать его содержанию. Если вы оставите все как есть, окно центрируется, но больше не расширяется, чтобы соответствовать его содержимому.

Можно ли центрировать окноА ТАКЖЕ он продолжает изменять размер, чтобы соответствовать своему содержанию?

from Tkinter import *
import ttk

def center(root):
    w = root.winfo_screenwidth()
    h = root.winfo_screenheight()
    rootsize = tuple(int(_) for _ in root.geometry().split('+')[0].split('x'))
    x = w/2 - rootsize[0]/2
    y = h/2 - rootsize[1]/2
    root.geometry("%dx%d+%d+%d" % (rootsize + (x, y)))

root = Tk()
var = StringVar()
var.set('Small Text')

label = ttk.Label(root, textvariable=var)
label.grid(column=0, row=0)

# Change the text label in a couple of seconds.
def changeit():
    var.set('BIG TXT - ' * 5)
root.after(2000, changeit)

# Comment out this center call and the label expands.
root.after(100, lambda: center(root))
root.mainloop()

Ответы на вопрос(1)

Ваш ответ на вопрос