gpt4 book ai didi

python - 如何使用 PyGI 获取带有 Wnck 的窗口列表?

转载 作者:行者123 更新时间:2023-11-28 23:05:41 24 4
gpt4 key购买 nike

我刚开始使用 PyGI(在 Ubuntu Natty 上),尽管我以前从未使用过 pygtk。虽然我在 wxPython 程序中使用了 wnck,但它很容易获得当前打开的窗口列表。在 PyGI 中,窗口列表总是空的。相关代码位:

from gi.repository import Gtk, Wnck

while Gtk.events_pending():
Gtk.main_iteration()
#... in my app class...
screen = Wnck.Screen.get_default()
wins = screen.get_windows()

这样,wins == []。谢谢!

最佳答案

您需要调用screen.force_update()screen.get_windows() 返回窗口列表之前。不幸的是,文档缺少这一部分 :(

In [1]: from gi.repository import Gtk, Wnck

In [2]: Gtk.main_iteration()
Out[2]: True

In [3]: screen = Wnck.Screen.get_default()

In [4]: screen.force_update()

In [5]: screen.get_windows()
Out[5]:
[<Window object at 0x167bd20 (WnckWindow at 0x195d0e0)>,
<Window object at 0x167bf00 (WnckWindow at 0x195d740)>,
<Window object at 0x167bf50 (WnckWindow at 0x195d850)>]

关于python - 如何使用 PyGI 获取带有 Wnck 的窗口列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5794309/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com