我正在尝试在另一个正在运行的应用程序上创建一个叠加窗口。 让我们说firefox。我通过使用实现 Xcreatewindow
win = XCreateWindow( display, *firefoxwindow,
50, 300, 400, 400,
0,
visualinfo.depth,
InputOutput,
visualinfo.visual,
CWColormap|CWEventMask|CWBackPixmap|CWBorderPixel,
&attr
) ;
我使用XQueryTree()
搜索了* firefoxwindow然后按照此代码 https://gist.github.com/903479
当我将XRoot用作父级时,结果是透明窗口。 但是,当我尝试使用firefoxwindow或其他应用程序窗口作为父级时,它变得非常敏感。
答案 0 :(得分:1)
在您的情况下,您需要手动合成窗口像素图和背景窗口。当您使用root创建窗口时,父透明度由合成窗口管理器
处理