Чтобы установить максимальную высоту верхнего уровня, вы используете wm maxsize
, возможно, с очень большим значением для горизонтального размера.Чтобы получить его текущий размер, вы используете winfo height
(и winfo width
в другом измерении).Сочетая их:
# 10k is just a "big" number
wm maxsize .top 10000 [winfo height .top]
Теперь хитрый момент с BWidget заключается в том, что он не устанавливает размер окна сразу или даже при первом отображении.Это означает, что вы должны указать, когда настраивать окно.Дешевая вещь, которую стоит попробовать - это поставить ее на полсекунды в будущем;в конце концов, даже опытные пользователи, скорее всего, потратят хотя бы немного времени, прежде чем взаимодействовать с ним.Это сделано с after
, например:
# 500 milliseconds in the future
after 500 {
# 10k is just a "big" number
wm maxsize .top 10000 [winfo height .top]
}