qt窗口透明控件不透明,代码如何实现
时间: 2024-05-16 13:17:39 浏览: 68
qt飞行器航向角动态显示源代码
你可以通过设置窗口透明度的方式来实现窗口透明控件不透明的效果。具体实现步骤如下:
1. 在窗口构造函数中设置窗口透明度为0.9(透明度范围为0-1):
```cpp
setWindowOpacity(0.9);
```
2. 在需要设置不透明的控件上设置背景色为白色,例如:
```cpp
QLabel *label = new QLabel(this);
label->setText("Hello, World!");
label->setStyleSheet("background-color: white;");
```
这样设置后,窗口背景会透明,但是标签的背景色为白色,不会透明。
完整示例代码如下:
```cpp
#include <QApplication>
#include <QWidget>
#include <QLabel>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QWidget w;
w.setWindowOpacity(0.9); // 设置窗口透明度为0.9
QLabel *label = new QLabel(&w);
label->setText("Hello, World!");
label->setStyleSheet("background-color: white;"); // 设置标签背景色为白色
w.show();
return a.exec();
}
```
阅读全文