Qt 410
Делал с "плавающими" виджетами которым parent был mainWndow - они рисовались поверх него и с полупрозрачностью было ок в windows и x11. (конечно геометрически внутри mainWindow)
QWidget * dialog = new QWidget( mainWindow );
{
QPalette p = dialog->palette();
p.setBrush( dialog->backgroundRole(), QBrush(QColor(255, 255, 255, 128)) );
dialog->setAutoFillBackground(true);
dialog->setPalette( p );
}
dialog->move( ...
dialog->resize( ...
кстати в paintEvent тогда этого видгета можно рисовать (drawPixmap) полупрозрачные pixmaps - они будут накладываться правильно на нижние widgets