Stack Overflow на русском Asked on November 18, 2021
Написал программу и хочу сделать исполняемый файл с помощью pyinstaller
, но к сожалению, при запуске программы, некоторые размеры окон неверны, т.к. я задаю геометрию окна таким образом: self.geometry('+{}+{}'.format(w, h))
В данном примере главное то, что размеры окна задаются автоматически.
При запуске программы через IDEL всё отображается правильно, но когда запускаю .exe файл, то размеры съезжают. Чтобы всё было хорошо, мне надо узнать автоматические размеры заданные окну. Как это можно реализовать?
Можно растянуть невидимый виджет на весь экран и измерить его размеры с помощью winfo_height и winfo_width. Приведу пример для кнопки:
import tkinter as tk
def func():
x = button_place.winfo_width()
y = button_place.winfo_height()
print(x, y)
root = tk.Tk()
root.geometry('600x500')
button_place = tk.Button(root, text='', font='Times 15', command=func)
button_place.place(w=600, h=500)
root.mainloop()
Но это обычно используется для определения размеров виджетов. Для определения экрана нужна просто root.geometry()
. Первый пример привел просто для дополнительной информации, может Вам понадобиться
Answered by Nezerix on November 18, 2021
Используйте метод geometry()
класса tkinter.Tk()
, пример:
import tkinter as tk
root = tk.Tk()
print(root.geometry())
Answered by n1tr0xs on November 18, 2021
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP