vee*_*vee 1 user-interface qt qt-designer qlabel qpushbutton
我在视频前面创建了一个按钮(使用QVideoWidget和QMediaPlayer).我正在使用具有透明背景的图像来设置图像按钮.
如何将QPush按钮设置为透明,但内部图像是否可见?我尝试将其设置为透明,但图像的背景变为黑色.
我在Qt上尝试过这个C++:控制标签和按钮的透明度,但它不起作用.我试过这个:
ui->btn_Touchme->setAttribute(Qt::WA_TranslucentBackground);
ui->btn_Touchme->setStyleSheet("QPushButton{background: transparent;}");
ui->btn_Touchme->setAttribute(Qt::WA_NoSystemBackground, true);
ui->btn_Touchme->setAttribute(Qt::WA_TranslucentBackground, true);
Run Code Online (Sandbox Code Playgroud)
它仍然是黑色的
我尝试使用QLabel,但我得到了相同的结果.对我有什么建议吗?
我使用的是qt 5.3.2和ubuntu 14.04LTS
为了使 QPushButton 透明,您还需要将按钮设置为“扁平”:
button->setFlat(true);
button->setStyleSheet("QPushButton { background-color: transparent }");
Run Code Online (Sandbox Code Playgroud)
或者换句话说,将样式表中的边框设置为 0px:
button->setStyleSheet("QPushButton { background-color: transparent; border: 0px }");
Run Code Online (Sandbox Code Playgroud)
我希望这对您和其他可能有同样问题的人有用。
如果可以将鼠标悬停在按钮上显示按钮边距,则可以使用QToolButtonwith autoRaise设置为true.
此外,您还可以设置以下样式表,即使鼠标悬停在按钮上也可以使按钮保持透明.
ui->btn_Touchme->setStyleSheet("background-color: rgba(255, 255, 255, 0);");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8650 次 |
| 最近记录: |