我使用了Tkinter,有几个Toplevels,它们在Ubuntu任务栏中显得分开,而不是像打开多个firefox窗口那样在一起(我的意思是它们都在firefox图标下组合在一起,所需的可以从它)。所有tkinter窗口都单独出现在任务栏中,因此在栏中占据了很多空间。有一种方法可以将它们组合在一起,这样就可以很容易地看到当前打开了多少个窗口,并且清楚地看到它们是一个程序
答案 0 :(得分:1)
tkinter提供的唯一机制是wm_group
方法,它向窗口管理器提供一个或多个窗口属于单个组的提示。窗口管理器可以自由使用或忽略这些提示。我不知道这对Ubuntu以及你正在使用的窗口管理器是否有任何影响。
来自规范的tcl / tk文档:
wm group window ?pathName?
如果指定了 pathName ,它将为一组相关窗口的领导者提供路径名。例如,当组的领导者被图标化时,窗口管理器可以使用该信息来取消映射组中的所有窗口。可以将 PathName 指定为空字符串,以从任何组关联中删除窗口。如果指定了 pathName ,则该命令返回一个空字符串;否则它返回窗口当前组头的路径名,如果窗口不属于任何组,则返回空字符串。
root = tk.Tk()
w1 = tk.Toplevel(root)
w2 = tk.Toplevel(root)
w1.group(root)
w2.group(root)