Qt的透明窗口

时间:2011-03-04 21:19:35

标签: c++ linux qt

如何在Qt for Linux中创建透明窗口。我尝试了以下方法,但它不起作用:

myWidget::myWidget(QWidget *parent) : QWidget(parent, Qt::FramelessWindowHint) {
   setWindowOpacity(0.4);
}

3 个答案:

答案 0 :(得分:3)

  

“请注意,在X11下你需要   一个复合管理器运行,和   X11具体_NET_WM_WINDOW_OPACITY   原子需要得到支持   你正在使用的窗口管理器。“

http://doc.qt.nokia.com/4.7/qwidget.html#windowOpacity-prop

你在使用什么窗口管理器? http://en.wikipedia.org/wiki/Compositing_window_manager#List_of_compositing_window_managers

您的服务器是否支持“复合扩展程序”? http://en.wikipedia.org/wiki/Composite_(graphics

你的卡是否支持它?

答案 1 :(得分:1)

我有一个类似的问题,但在Windows上,不确定它是否会在Linux中有所帮助 而不是Qt :: FramelessWindowHint使用Qt :: SplashScreen。我可以在其他小部件上放置一个无框和透明的窗口。

答案 2 :(得分:0)