如何使tkinter窗口浮动在i3 windowmanager中

时间:2016-03-06 18:34:58

标签: python tkinter

我只是在python中玩tkinter一点,但我的i3(平铺)窗口管理员有一些“麻烦”。

我想创建一个用于输入值的浮动窗口(类似于“打开文件”对话框)。这必须是可能的,因为Gimp也适用于i3中的浮动窗口。当然我不确定tkinter是否可行。

有人碰巧知道问题并找到解决方案吗?我想必须在tkinter.Tk()小部件上设置某种标志。

2 个答案:

答案 0 :(得分:4)

您可以通过将根元素的type属性设置为dialog

告诉i3wm这是一个对话框
from Tkinter import Tk
root = Tk()
root.attributes('-type', 'dialog')
root.mainloop()

i3将以浮动模式自动打开窗口而不是平铺。

答案 1 :(得分:3)

如果您知道窗口的标题或标题的任何模式,您可以在i3配置文件中添加以下行以使其在启动时浮动:

for_window [title="title of your window"] floating enable

例如,我使用这个配置让我的gnome-keyring每次要求我输入密码时都会浮动:

for_window [title="Unlock private key"] floating enable

编辑:

根据https://faq.i3wm.org/question/61/forcing-windows-as-always-floating.1.html

" i3将对话框,工具栏,工具栏和启动窗口设置为浮动。"