I want to remove the background of my QListView so that the background below can be seen through. How can I do that?
I tried setAttribute(Qt::WA_NoSystemBackground
The answer depends on whether your QListView
is a top-level widget. The QWidget docs on transparency explain in detail. For a top-level widget, it may be as simple as:
view->setWindowOpacity(50);
For a widget that's not top level, you want to set the background to one with an alpha channel:
QPalette palette = view->palette();
palette.setColor(QPalette::Background, Qt::transparent);
view->setPalette(palette);
You should also be able to do the same thing with style sheets:
view->setStyleSheet("background-color: transparent;");
You may need to set autoFillBackground to false so that the widget will not automatically fill in the background.