Только учусь.
Пытаюсь создать окно с параметрами из cfg файла (ширина, высота + фулскрин).
Окно создается всегда в центре экрана, размеры из cfg.
Пока не знаю как открывать окно развернутым (не на весь экран, а именно развернутым, но опять же по условию, если разрешение экрана не превысит 1980x1920).
Долго переставлял все с места на место. PyScripter пару раз при отладке зависал, даже раз винду повесил.
Пока что использую только то, что хоть частично, но понял.
Удаляет и создает cfg файл нормально. А вот попробовал руками записать в него в первое значение 10, а во второе 4000 (заведомо не верные) и винда сдохла.
from tkinter import * from configparser import SafeConfigParser import os # перезапись конфиг файла def rewrite(): if os.path.exists('default.cfg'): cf = open('default.cfg') cf.close() os.remove('default.cfg') cf=open('default.cfg','w', encoding="utf-8") cf.write('[set_file]\ns_height=500\ns_width=800\ns_full=0') cf.close() else: cf=open('default.cfg','w', encoding="utf-8") cf.write('[set_file]\ns_height=500\ns_width=800\ns_full=0') cf.close() # выход из программы def quick_quit(): mainframe.destroy() mainframe = Tk() mainframe.title("Name") # чтение конфиг файла mainframe.minsize(800,500) mainframe.maxsize(1980,1020) parser = SafeConfigParser() parser.read('default.cfg') # << проверка значений if os.path.exists('default.cfg'): if 800 <= int(parser.get('set_file','s_width')) <= 1980: if 500 <= int(parser.get('set_file','s_height')) <= 1920: if 0 <= int(parser.get('set_file','s_full')) <= 1: pass else: rewrite() # << построение окна parser.read('default.cfg') mainframe_x = parser.get('set_file','s_width') mainframe_y = parser.get('set_file','s_height') mainframe_screen = parser.get('set_file','s_full') mainframe_width = (mainframe.winfo_screenwidth() / 2 - int(mainframe_x) / 2) mainframe_heigth = (mainframe.winfo_screenheight() / 2 - int(mainframe_y) / 2) mainframe.geometry("%dx%d+%d+%d" % (int(mainframe_x), int(mainframe_y), mainframe_width, mainframe_heigth)) mainframe.mainloop()