如何在不将其从任务栏中删除的情况下更改 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