【发布时间】:2021-05-13 04:04:32
【问题描述】:
我正在尝试在 tkinter python 中使用自定义标题栏制作窗口。
我在窗口中添加了关闭按钮和最小化按钮。
代码如下:
class custom_titlebar(tk.Frame):
def __init__(self,master= None,*args,**kwargs):
tk.Frame.__init__(self,master = None,*args,**kwargs)
self.pclose = ImageTk.PhotoImage(Image.open("Close.png").resize((27,24),Image.ANTIALIAS))
self.pminimize = ImageTk.PhotoImage(Image.open("Minimize.png").resize((27,24),Image.ANTIALIAS))
def create_basics(self):
self.up = tk.Frame(self,width = 750,height = 10,bg = "#cdb990")
self.close = tk.Button(self.up,image = self.pclose,borderwidth = 0,bg = "#cdb990")
self.close.pack(side= RIGHT,padx = 7,pady = 7)
self.close.bind("<Button-1>",lambda event:self.master.destroy())
self.minimize_button = tk.Button(self.up,image = self.pminimize,borderwidth = 0,bg = "#cdb990")
self.minimize_button.pack(side= RIGHT,pady = 7)
self.minimize_button.bind("<Button-1>",lambda event:self.minimize_window(event))
self.up.pack(fill = X)
def minimize_window(self,event):
self.master.overrideredirect(0)
self.master.wm_state("iconic")
if __name__ == "__main__":
window = tk.Tk()
window.overrideredirect(1)
ex = custom_titlebar(window,height = 750,width = 750)
ex.create_basics()
ex.pack()
window.mainloop()
问题是每当我最小化window 并从任务栏再次打开它时,我希望标题栏像以前一样再次被删除。
如何在我的代码中实现这一点。
提前感谢您的帮助。
【问题讨论】: