【问题标题】:How to make tkinter Window floating in i3 windowmanager如何使 tkinter 窗口在 i3 窗口管理器中浮动
【发布时间】:2016-06-20 05:49:08
【问题描述】:

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

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

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

【问题讨论】:

    标签: python tkinter


    【解决方案1】:

    您可以通过将根元素的 type 属性设置为 dialog 来告诉 i3wm 这是一个对话框

    from Tkinter import Tk
    root = Tk()
    root.attributes('-type', 'dialog')
    root.mainloop()
    

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

    【讨论】:

    【解决方案2】:

    如果你知道窗口的标题,或者标题的任何模式,你可以在你的 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 将对话框、实用程序、工具栏和启动窗口设置为浮动。”

    【讨论】:

    • 还不完全是我想要的,但谢谢。猜猜暂时解决了。
    • @J.Doe 对不起我的错误。我认为为了让 i3 自动将其识别为浮动,您需要将窗口类型设置为“对话框、实用程序或启动窗口”。我在答案中添加了参考。不过,我对 Tkinter 并不熟悉。您是否尝试过在 i3 中创建一些基本的对话框?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-21
    • 2022-01-22
    • 2018-06-17
    • 1970-01-01
    • 1970-01-01
    • 2022-08-23
    相关资源
    最近更新 更多