我希望有一个打开的窗口和它的图标列表,并使用python处理它。我以为我已经接近了xprop和wmctrl,但我不能用它来实现我的目的。我可以用wmctrl -l获得打开窗口的列表,但不知道如何为列出的控件获取图标/图标路径。
请帮助:)
发布于 2011-04-28 07:20:37
您可以使用模块wnck和gtk。
例如:
import pygtk
pygtk.require('2.0')
import gtk
import wnck
screen = wnck.screen_get_default()
while gtk.events_pending():
gtk.main_iteration(False)
for w in screen.get_windows():
name = w.get_name()
icon = w.get_icon()
...其中名称是字符串,图标是GdkPixbuf。
您可以在http://developer.gnome.org/libwnck/stable/WnckWindow.html上阅读libwnck的API文档,这是C的API文档,但是对于wncK_window,您只需删除前缀wncK_window即可。如果文档中写的是wnck_window_get_name(),那么在Python中将是my_window.get_name()。
libwnk是特定于XWindow的,因此您不能在MS上使用它。在这种情况下,您可以使用其他模块对此进行精确的帮助。检查Get list of open windows in Python的答案
https://stackoverflow.com/questions/5810399
复制相似问题