qt 透明度设置(setWindowOpacity 和 setAutoFillBackground 和 带透明度的画刷填充就好了)
1,父窗口透明
// 设置背景图片
QPalette pa;
setAutoFillBackground(true);
pa.setBrush(QPalette::Background,QBrush(QPixmap("image/cloud.jpg")));
setPalette(pa);
//设置控制透明度
setWindowOpacity (0.7); // 半透明
2、控件透明
setAutoFillBackground(false);
setWindowFlags(Qt::FramelessWindowHint);
setAttribute(Qt::WA_TranslucentBackground, true);
然后重载paintEvent
用个带透明度的画刷填充就好了
http://blog.163.com/wangsh_ll/blog/static/1934961732015212115138520/