Сделал окно с прозрачным фоном:
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
...
this->setWindowFlags( Qt::FramelessWindowHint );
this->setAttribute( Qt::WA_TranslucentBackground );
this->setStyleSheet( "background:transparent;");
QPixmap backgroud_img( ":/materials/background.png" );
QImage image(backgroud_img.size(), QImage::Format_ARGB32_Premultiplied);
image.fill(Qt::transparent);
QPainter p(&image);
p.setOpacity(0.35);
p.drawPixmap(0, 0, backgroud_img);
p.end();
backgroud_img = QPixmap::fromImage(image);
ui->background->setPixmap( backgroud_img ); // background - label элемент
}
Если окно не сворачивать а делать не активным, например нажав на другое окно и затем снова сделать активным, нажав на него или на его иконку в панели задач windows, то прозрачность элементов уменьшается, как будто они накладываются друг на друга.
Как я понял, это события:
deactivate()
activate()
Картинка прозрачного фона
Окно сначала
Окно после события активности
Ещё одно событие
Возможно это происходит и после события неактивности, но я не заметил.
Как это можно исправить?