如何在不将其从任务栏中删除的情况下更改 tkinter window header 的颜色?
How to change the colour of tkinter window header without removing it from the taskbar?
我正在 tkinter 中创建一个 GUI,我正在尝试自定义 window header 以便我可以更改颜色。
我用过:
root.overrideredirect(True)
去掉header,然后重建移动选项卡的功能:
def move_window(event):
x, y = root.winfo_pointerxy()
root.geometry(f"+{x-650}+{y}")
title_bar = tk.Frame(root, bg=pallete["pallete1"], bd=0,height=22)
title_bar.config(highlightthickness=2, highlightcolor= pallete["pallete3"])
title_bar.pack(fill="x")
title_bar.bind('<B1-Motion>', move_window)
只是,当我overrideredirect
把windowheader去掉的时候,程序就消失在任务栏了,所以你找不到了。
我只是想知道是否有办法解决这个问题或更改 window header 而无需删除它并重建一个新的。
def minsize(): # minsize func() for your button
root.overrideredirect(0) # minsize window and iconify
root.iconify()
def showwindow(event):
root.overrideredirect(1)
root.iconify()
使用 map
将其绑定到您的标题栏
your_widdgget.bind("<Map>", lambda event: showindow(event)) # in this case i don't know why lambda but it still works for me
我正在 tkinter 中创建一个 GUI,我正在尝试自定义 window header 以便我可以更改颜色。
我用过:
root.overrideredirect(True)
去掉header,然后重建移动选项卡的功能:
def move_window(event):
x, y = root.winfo_pointerxy()
root.geometry(f"+{x-650}+{y}")
title_bar = tk.Frame(root, bg=pallete["pallete1"], bd=0,height=22)
title_bar.config(highlightthickness=2, highlightcolor= pallete["pallete3"])
title_bar.pack(fill="x")
title_bar.bind('<B1-Motion>', move_window)
只是,当我overrideredirect
把windowheader去掉的时候,程序就消失在任务栏了,所以你找不到了。
我只是想知道是否有办法解决这个问题或更改 window header 而无需删除它并重建一个新的。
def minsize(): # minsize func() for your button
root.overrideredirect(0) # minsize window and iconify
root.iconify()
def showwindow(event):
root.overrideredirect(1)
root.iconify()
使用 map
your_widdgget.bind("<Map>", lambda event: showindow(event)) # in this case i don't know why lambda but it still works for me