我正在尝试轻松应用MainWindow,我有一个按钮。点击QDialog之后它就打开了。我想让QDialog透明,但它不起作用。
void MainWindow::on_pushButton_clicked()
{
QDialog *qd = new QDialog();
//QGraphicsOpacityEffect *opacityEffect = new QGraphicsOpacityEffect;
//opacityEffect->setOpacity(0.5);
//qd->setGraphicsEffect(opacityEffect);
qd->setFixedSize(this->width(),this->height());
//qd->setPalette(QPalette(QPalette::Window,QColor(0,0,0,128)));
//setAttribute(Qt::WA_TranslucentBackground);
//qd->setWindowFlags(Qt::FramelessWindowHint);
//setWindowFlags(Qt::FramelessWindowHint);
this->setWindowOpacity(0.5);//this actually works
qd->setWindowOpacity(0.5); //this is not working
//qd->setStyleSheet("background:transparent;background-color:rgba(0,0,0,95)");
// qd->repaint();
qd->show();
}
所有其余的都是简单的GUI项目,并添加了带插槽的按钮()。是否可以使QDialog透明?我留下了评论的行,看看我是怎么做的,但没有效果。
这是qt 5.1.0的一个问题我已经发布了一个错误并且状态已经解决,所以在新版本中一切都会好的。
答案 0 :(得分:0)
这是qt 5.1.0的一个问题我已经发布了一个bug并且状态已经解决,所以在新版本中一切都会好的。