QMainWindow不透明的工作,Qdialog没有

时间:2013-08-13 13:23:21

标签: qt opacity qmainwindow qdialog

我正在尝试轻松应用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的一个问题我已经发布了一个错误并且状态已经解决,所以在新版本中一切都会好的。

1 个答案:

答案 0 :(得分:0)

这是qt 5.1.0的一个问题我已经发布了一个bug并且状态已经解决,所以在新版本中一切都会好的。