0

也许有更好的方式来表达这个问题,但那是我目前能想到的最好的方式。无论如何,问题是这样的。

我有一个 PNG 文件用作 QMainWindow 背景,我正在使用样式表设置它。唯一的问题是给一个圆角,我在 png 文件中使用了 alpha 通道。

由于QMainWindow,通道是透明的,但在它下面我看到灰色(而不是透明)。我尝试在样式表本身中将背景设置为透明,但后来它变成了黑色。

我通过下面指定的方法设置它。

void MainWindow::setBackgroundImage(QString file)
{
    QString sheet = QString("MainWindow {border-image:url(%1); }").arg(file);
    this->setStyleSheet(sheet);
}

(我尝试使用背景图像,但它不适合内容,所以我改用边框图像标签)。任何人都知道如何使 alpha 通道的区域看起来透明?

4

1 回答 1

-1

你还应该设置:

QMainWindow::setAttribute(Qt::WA_TranslucentBackground, true);
于 2014-03-28T14:40:27.680 回答