Вот тот же код, использующий современные библиотеки GObject Introspection вместо устаревшего метода PyGTK, который написал Джош Ли:
from gi.repository import Gtk, Wnck
Gtk.init([]) # necessary if not using a Gtk.main() loop
screen = Wnck.Screen.get_default()
screen.force_update() # recommended per Wnck documentation
window_list = screen.get_windows()
active_window = screen.get_active_window()
Что касается документации, ознакомьтесь с Справочное руководство Libwnck . Это не характерно для python, но весь смысл использования GObject Introspection заключается в том, чтобы иметь одинаковый API на всех языках благодаря привязкам gir
.
Кроме того, Ubuntu поставляется как с wnck
, так и с соответствующей gir
привязкой из коробки, но если вам необходимо установить их:
sudo apt-get install libwnck-3-* gir1.2-wnck-3.0
Это также установит libwnck-3-dev
, который не является необходимым, но установит полезную документацию, которую вы можете прочитать, используя DevHelp