我有QMDIArea,在里面我添加了一个QMDISubWindow。我需要QMDIArea完全透明。默认情况下,它以灰色显示。
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QMdiArea area = new QMdiArea();
area->setStyleSheet("background:transparent;");
area->setAttribute(Qt::WA_TranslucentBackground);
this->setCentralWidget(area);
MyChildScreenDialog *dlg = new MyChildScreenDialog ();
area->addSubWindow(dlg );
}
但不幸的是,设置背景:transaprent和设置属性Qt :: WA_TranslucentBackground在QMdiArea中无法工作。
我们可以让QMdiArea透明吗?我们需要在上面的代码中进行哪些修改?
答案 0 :(得分:0)
我可以通过以下代码解决此问题。
area->setBackground(QBrush(Qt::transparent));
答案 1 :(得分:0)
仅使用QSS,这是方法:
qproperty-background: transparent;