Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用PyCairo直接绘制到根窗口_Python_Linux_Cairo - Fatal编程技术网

Python 使用PyCairo直接绘制到根窗口

Python 使用PyCairo直接绘制到根窗口,python,linux,cairo,Python,Linux,Cairo,我希望能够使用Cairo直接绘制Python中的根窗口。我已经在全屏幕窗口上测试了我的代码绘图,所以我知道这不是问题所在。但是,当我尝试直接绘制到根窗口时,如下所示: root = gtk.gdk.get_default_root_window() cr = root.cairo_create() ... # Drawing code here 什么也没发生。代码运行良好,但没有任何东西被绘制到屏幕上。有没有办法做到这一点,或者我需要覆盖一个透明的窗口上的一切?(该解决方案的问题是多监视器设置

我希望能够使用Cairo直接绘制Python中的根窗口。我已经在全屏幕窗口上测试了我的代码绘图,所以我知道这不是问题所在。但是,当我尝试直接绘制到根窗口时,如下所示:

root = gtk.gdk.get_default_root_window()
cr = root.cairo_create()
...
# Drawing code here
什么也没发生。代码运行良好,但没有任何东西被绘制到屏幕上。有没有办法做到这一点,或者我需要覆盖一个透明的窗口上的一切?(该解决方案的问题是多监视器设置)


请注意,KDE4不遵循此约定。您需要找到根窗口的子窗口,它的属性“NET\u WM\u window\u TYPE”设置为“NET\u WM\u window\u TYPE\u DESKTOP”。

您是否正在运行某种桌面环境,例如gnome?他们使用全屏桌面窗口,实际上覆盖了真正的根窗口。当这些环境运行时,您看不到根窗口。下面是一些可以找到桌面的perl。下面是一些可以找到桌面的perl。