为什么有些(例如Emacs和Chrome)xwindows报告没有名称和类?

2024-10-04 09:22:03 发布

您现在位置:Python中文网/ 问答频道 /正文

当我使用python xlib通过get\u input\u focus()获取当前聚焦的窗口时,Konsole的窗口名和类设置正确,但是对于Chrome和Emacs,它们只是空字符串(尽管窗口ID似乎对所有三个都有效)。为什么?你知道吗

如何获取这些窗口的标题和所有者进程?因为我使用KDE,所以将DBUS用于这些事情是一种选择,但是我更喜欢一种更通用的解决方案。你知道吗


Tags: 字符串id标题inputget进程chrome解决方案
1条回答
网友
1楼 · 发布于 2024-10-04 09:22:03

如果在此处发现类似问题: How do I detect the currently focused application?

我稍微修改了一下:

cur_window = the_display.get_input_focus().focus
cur_class = None
while cur_class is None:
    cur_name = cur_window.get_wm_name()
    cur_class = cur_window.get_wm_class()
    if cur_class is None:
        cur_window = cur_window.query_tree().parent

现在它起作用了。你知道吗

相关问题 更多 >