Почему 1 Text Widget не даёт расширяться 2 Text Widget? Tkinter Python

Мне нужно, чтобы 1 и 2 Text Widget ширина была равномерная но почему-то 1 Text Widget не изменяет размер, а 2 Text Widget изменяет размер или может быть я что-то неправильно понимаю.

Вот фрагмент кода:

from tkinter import *

tk = Tk()

wscreen = tk.winfo_screenwidth()
hscreen = tk.winfo_screenheight()

tk.title("Рандомайзер")
tk.minsize(int(wscreen / 1.6), int(hscreen / 1.4))

_output = Text(tk, state=DISABLED, font=("Comic Sans MS", 10))
_input = Text(tk, font=("Comic Sans MS", 10))

_input.pack(side=LEFT, fill=BOTH, expand=True)
_output.pack(side=RIGHT, fill=BOTH, expand=True)

tk.mainloop()

Ответы (1 шт):

Автор решения: insolor

У текстовых полей по умолчанию ширина 80 символов (выяснил с помощью print(text["width"])), они не "хотят" уменьшаться сильнее, если место под эту ширину еще есть. Можно поставить width=1 и указать какой-то начальный размер окна (чтобы при старте окно не сузилось под ширину текстовых полей в один символ), тогда текстовые поля будут одинаково равномерно сужаться и расширяться.

Пример:

from tkinter import *

tk = Tk()

wscreen = tk.winfo_screenwidth()
hscreen = tk.winfo_screenheight()

tk.title("Рандомайзер")
# tk.minsize(int(wscreen / 1.6), int(hscreen / 1.4))
tk.geometry("800x600")

_output = Text(tk, state=DISABLED, font=("Comic Sans MS", 10), width=1)
_input = Text(tk, font=("Comic Sans MS", 10), width=1)

_input.pack(side=LEFT, fill=BOTH, expand=True)
_output.pack(side=RIGHT, fill=BOTH, expand=True)

tk.mainloop()
→ Ссылка