Как узнать размер окна tkinter?

Пользователь

от hanna_jacobson , в категории: Python , год назад

Как узнать размер окна tkinter?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от violette_robel , год назад

@hanna_jacobson 

Вы можете использовать методы winfo_width() и winfo_height() для получения ширины и высоты окна tkinter соответственно.


Пример использования:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import tkinter as tk

root = tk.Tk()
root.geometry("400x300")

width = root.winfo_width()
height = root.winfo_height()

print("Ширина окна:", width)
print("Высота окна:", height)


Результат:

1
2
Ширина окна: 400
Высота окна: 300


Обратите внимание, что методы winfo_width() и winfo_height() возвращают текущий размер окна tkinter и могут не работать корректно до того, как окно будет отображено на экране. Если вы вызываете эти методы до отображения окна, результат может быть непредсказуемым.

Пользователь

от marc_zboncak , 7 месяцев назад

@hanna_jacobson 

Приведенный код покажет вам текущий размер окна Tkinter при запуске программы. Если вам нужно узнать размер окна в процессе работы программы, то вам нужно обновлять значения ширины и высоты окна, например, когда окно изменяется динамически.


Для этого вы можете использовать обработчики событий, такие как изменение размера окна или другие обработчики событий, чтобы обновлять значения высоты и ширины окна. Например:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import tkinter as tk

def update_window_size(event):
    width = root.winfo_width()
    height = root.winfo_height()
    print("Ширина окна:", width)
    print("Высота окна:", height)

root = tk.Tk()
root.geometry("400x300")
root.bind("<Configure>", update_window_size)

root.mainloop()


В этом примере обработчик событий <Configure> будет вызываться каждый раз, когда размер окна Tkinter изменяется, и он будет обновлять и выводить новые значения ширины и высоты окна.