【发布时间】:2021-08-14 23:06:24
【问题描述】:
我正在 tkinter 中创建一个 GUI,我正在尝试自定义窗口标题以便我可以更改颜色。
我用过:
root.overrideredirect(True)
去掉表头,然后重建了移动标签的功能:
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去掉窗口标题时,程序在任务栏中消失了,所以你找不到了。
我只是想知道是否有办法解决这个问题或更改窗口标题而不必删除它并重建一个新的。
【问题讨论】:
-
这能回答你的问题吗? Can I change the title bar in Tkinter?
-
@nbk 不,那是我最初查看并使用他们的一些代码但仍然无法工作的地方
-
所以你在 overrideriderct 时寻找拖动胜利?或者如果你缩小你的应用程序,你需要那个图标?在这里覆盖是 TheLizzard = stackoverflow.com/questions/66968676/… 的完美答案。我不清楚你到底是什么意思。还有一个选项
iconify你可以使用它覆盖 -
接受的答案将标题栏的颜色更改为您输入的颜色,我尝试使用绿色而不是白色,所以您能解释一下该答案不适合的地方吗?
-
@nbk 接受的答案允许您移动和关闭屏幕,我希望能够最小化然后从任务栏再次打开它。 root.overrideredirect(True) 不在任务栏中显示程序。
标签: python user-interface tkinter header window