Я хотел бы добавить настраиваемую кнопку сворачивания в ###, но действительно не знаю, как это сделать.
Я попытался немного поискать, но нашел только результаты Python 2, которые больше не работают для Python 3.
Было бы лучше, если бы это было возможно для как Linux, так и Windows (с проверкой ОС в начале, которую я могу сделать сам) и без использования импортированных модулей из базовых модулей Python.
Вот мой текущий код:
from tkinter import *
import ctypes
root = Tk()
usr32 = ctypes.windll.user32
res1 = usr32.GetSystemMetrics(0)
res2 = usr32.GetSystemMetrics(1)
#-------------------------------
def ext():
exit()
def minim():
###
root.resizable(0, 0)
root.geometry(str(int(res1 * 0.15)) + "x" + str(int(res2 * 0.1)))
root.overrideredirect(1)
back = Frame(root, bg='black')
back.pack_propagate(0)
back.pack(fill=BOTH, expand=1)
b_Frame = Frame(back, bg = "#505050")
b_Frame.place(x=0, y=0, anchor = "nw", width=res1 * 0.15, height=res2 * 0.025)
Ext_but = Button(b_Frame, text = "X", bg = "#FF6666", fg = "white", command=ext)
Ext_but.place(x=res1 - res1 * 0.8665, y=0, anchor = "nw", width=res1 * 0.016, height=res2 * 0.025)
Min_but = Button(b_Frame, text = "_", bg = "#FF6666", fg = "white", command=minim)
Min_but.place(x=res1 - res1 * 0.8825, y=0, anchor = "nw", width=res1 * 0.016, height=res2 * 0.025)
#-------------------------------
root.mainloop()





Ты можешь использовать:
root.wm_state("iconic")
Например, кнопка, которая делает это, может быть:
tk.Button(root, text = "Mimimize", command = lambda: root.wm_state("iconic")).pack()
Итак, в вашем примере это будет:
def minim():
root.wm_state("iconic")
Использует стандартные модули (по запросу). Протестировано в Windows 10 на Python 3.6, но должно работать со всеми операционными системами и версиями Python.
@Marcel Barlik. Чтобы прояснить, вы имеете в виду максимальную или неограниченную? (Заполнение экрана приложением или нажатие приложения на панели)
Теперь все в порядке. Я нашел способ. Спасибо за помощь. :)
Привет, это сработало с:> root.overrideredirect (0) Но это вызывает у меня еще одну проблему, когда я максимизирую назад, мне понадобится способ вернуть его обратно в root.overrideredirect (1) только при максимальном увеличении. Как это сделать? (Извините за мои глупые вопросы, я только начинаю с графического интерфейса на python, заранее спасибо).