加入收藏 | 设为首页 | 会员中心 | 我要投稿 鄂州站长网 (https://www.0711zz.com/)- 数据分析、网络、云渲染、应用安全、大数据!
当前位置: 首页 > 编程开发 > Python > 正文

python – 如何检测当前关注的应用程序?

发布时间:2020-09-25 12:52:43 所属栏目:Python 来源:互联网
导读:我希望能够通过 Python跟踪我的X11显示器上当前关注的应用程序.目的是将其与时间跟踪工具联系起来,这样我就可以记录我花费多少时间无效. 我已经在http://thpinfo.com/2007/09/x11-idle-time-and-focused-window-in.html找到了这段代码: import Xlib.displayd

我希望能够通过 Python跟踪我的X11显示器上当前关注的应用程序.目的是将其与时间跟踪工具联系起来,这样我就可以记录我花费多少时间无效.

我已经在http://thpinfo.com/2007/09/x11-idle-time-and-focused-window-in.html找到了这段代码:

import Xlib.display
display = Xlib.display.Display()
focus = display.get_input_focus()
print "WM Class: %s" % ( focus.focus.get_wm_class(),)
print "WM Name: %s" % ( focus.focus.get_wm_name(),)

但是,它似乎对我不起作用.显然,无论关注哪个应用程序,get_wm_class()和get_wm_name()都只返回None.

当然,解决方案需要与Compiz等所有这些新奇的窗口管理器一起使用.

解决方法

喔!我自己想通了:
import Xlib.display
display = Xlib.display.Display()
window = display.get_input_focus().focus
wmname = window.get_wm_name()
wmclass = window.get_wm_class()
if wmclass is None and wmname is None:
    window = window.query_tree().parent
    wmname = window.get_wm_name()
print "WM Name: %s" % ( wmname,)

(编辑:鄂州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读