如何从任务栏隐藏顶级窗口图标而不隐藏其边框

时间:2019-04-18 21:53:54

标签: python tkinter

我正在将tkinter窗口作为顶层窗口,但我希望当顶层窗口在任务栏中仅显示一个图标时,它是主窗口图标,而不是顶层窗口

我已经使用了overrideredirect(1),它可以工作,但它也隐藏了包括标题栏在内的顶层边框

w = tk.Tk()
w.title('main')
w.geometry('300x300')

def c():
    t = tk.Toplevel()
    t.title('toplevel') 
    t.geometry('100x100')
    # t.overrideredirect(1) 
    t.mainloop()
b = tk.Button(w,text='click',command=c)
b.pack()
w.mainloop()

1 个答案:

答案 0 :(得分:0)

方法.transient()完全可以满足您的要求,它将从任务栏中删除顶层图标:

import tkinter as tk
w = tk.Tk()
w.title('main')
w.geometry('300x300')

def c():
    t = tk.Toplevel()
    t.title('toplevel') 
    t.geometry('100x100')
    t.transient(w) 

b = tk.Button(w, text='click', command=c)
b.pack()
w.mainloop()

顺便说一句,您只需要调用mainloop()一次,而在函数c中再次调用是没有用的。