Найти - Пользователи
Полная версия: Ширина Frame tkinter
Начало » GUI » Ширина Frame tkinter
1
tisul
Python 3.3

tk = Tk()
fr = Frame(master=tk,width=100,height=200)
fr.pack(expand='yes',fill='both')
print('ширина = ',fr.winfo_width())
mainloop()

Почему данный код выдает что

ширина = 1

в документации написано
winfo_width(self)
Return the width of this widget. - возвращает ширину этого виджета

4kpt_II
Предварительно нужно использовать

tk = Tk()
fr = Frame(master=tk,width=100,height=200)
fr.pack(expand='yes',fill='both')
tk.update_idletasks()  # обновить все размеры виджетов!!!
print('ширина = ',fr.winfo_width())
mainloop()

так как до построения Tkinter не может знать их размеров - их назначает система в зависимости от экрана, отступов и т.п.

P.S. И базовое окно принято называть root

P.S.S. Будут вопросы - пишите…
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB