=====geometry===== Tkinter предоставляет различные универсальные методы, одним из которых является метод geometry (). Этот метод используется для установки размеров окна Tkinter, а также для установки положения главного окна на рабочем столе пользователя. **Окно Tkinter без использования метода геометрии.** # importing only those functions which are needed from tkinter import Tk, mainloop, TOP from tkinter.ttk import Button # creating tkinter window root = Tk() button = Button(root, text = 'Geeks') button.pack(side = TOP, pady = 5) mainloop() {{ :python:оконное_приложение:tkinter:position_and_size.jpg?400 |}} Как только вы запустите приложение, вы увидите, что положение окна Tkinter находится в северо-западной позиции экрана, и размер окна также мал, как показано в выходных данных. **Меняем размер окна** # importing only those functions which # are needed from tkinter import Tk, mainloop, TOP from tkinter.ttk import Button # creating tkinter window root = Tk() # creating fixed geometry of the # tkinter window with dimensions 150x200 root.geometry('200x150') button = Button(root, text = 'Geeks') button.pack(side = TOP, pady = 5) mainloop() {{ :python:оконное_приложение:tkinter:changed_size_but_same_position.jpg?400 |}} После запуска приложения вы увидите, что размер окна Tkinter изменяется, но позиция на экране остается той же. **Меняем положение окна** # importing only those functions which # are needed from tkinter import Tk, mainloop, TOP from tkinter.ttk import Button # creating tkinter window root = Tk() # creating fixed geometry of the # tkinter window with dimensions 150x200 root.geometry('200x150 + 400 + 300') button = Button(root, text = 'Geeks') button.pack(side = TOP, pady = 5) mainloop() {{ :python:оконное_приложение:tkinter:changed_position_and_size.png?400 |}} Когда вы запустите приложение, вы увидите, что позиция и размер изменяются. Теперь окно Tkinter появляется в другой позиции (300 смещено по оси Y и 400 смещено по оси X). Мы также можем передать аргумент переменной в методе geometry, но он должен быть в форме (variable1) x (variable2), иначе это вызовет ошибку. **Окно по цетру с помощью динамических параметров** from Tkinter import * root = Tk() x = (root.winfo_screenwidth() - root.winfo_reqwidth()) / 2 y = (root.winfo_screenheight() - root.winfo_reqheight()) / 2 root.wm_geometry("+%d+%d" % (x, y)) root.mainloop() Метод: def setGeometry(win, winx, winy):#Функция выравнивает окно по центру x = (win.winfo_screenwidth() / 2 - winx / 2) y = (win.winfo_screenheight() / 2 - winy / 2) win.geometry("%dx%d+%d+%d" % (winx, winy, x, y))