Python:Xlib——如何升起(置顶)窗口?

发布于 2024-08-08 07:27:30 字数 201 浏览 8 评论 0原文

我尝试过使用:

   win.configure(stack_mode=X.TopIf)
   win.set_input_focus(X.RevertToParent, X.CurrentTime)

但是,即使我的窗口管理器上没有任何焦点丢失预防功能,这也不起作用,有谁知道另一种方法可以做到这一点? Xlib 与否。

I've tried using:

   win.configure(stack_mode=X.TopIf)
   win.set_input_focus(X.RevertToParent, X.CurrentTime)

However even without any focus loss prevention on my window manager this does not work, does anyone know of another way to do this? Xlib or not.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

朦胧时间 2024-08-15 07:27:30

有一个名为 wmctrl 的命令行工具,它允许您与 EWMH/NetWM 交互 -兼容的 X 窗口管理器。

例如,

wmctrl -l

列出由窗口管理器管理的所有窗口,并

wmctrl -a Mozilla 

激活列表中标题中包含字符串“Mozilla”的第一个窗口。
还有其他方法可以选择窗口;以上只是一个例子。

wmctrl 还允许您移动窗口和调整窗口大小。

There is a command-line tool called wmctrl which allows you to interact with EWMH/NetWM-compatible X window managers.

For example,

wmctrl -l

lists all the windows managed by the window manager, and

wmctrl -a Mozilla 

makes active the first window in the list which has the string "Mozilla" in its title.
There are other ways to select windows; the above is just an example.

wmctrl enables you to move and resize windows too.

南巷近海 2024-08-15 07:27:30

试试这个:

window=Display().screen().root.query_pointer().child
window.set_input_focus(X.RevertToParent, X.CurrentTime)
window.configure(stack_mode=X.Above)

Try this:

window=Display().screen().root.query_pointer().child
window.set_input_focus(X.RevertToParent, X.CurrentTime)
window.configure(stack_mode=X.Above)
鼻尖触碰 2024-08-15 07:27:30

也许这就是解决方案:
[Xlib] 强制提升/映射/聚焦给定窗口

给出的解决方案(按照线程)涉及使用 wnck,它在 Python 中是 Gtk+ 绑定的一部分。

Perhaps this is the solution:
[Xlib] Force Raise/Map/Focus a given Window

A solution given (follow the thread) involves using wnck, which in Python is a part of the Gtk+ bindings.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文