删除QListView背景

lau*_*ent 3 qt background qlistview

我想删除我的QListView的背景,以便可以看到下面的背景.我怎样才能做到这一点?

我尝试过setAttribute(Qt::WA_NoSystemBackground),setAttribute(Qt::WA_NoBackground)但这并没有改变任何事情.此外,我无法覆盖paintEvent()否则它不会绘制项目.

任何的想法?

小智 8

不要忘记QScrollArea是QListView的基类,它包含名为Viewport的"另一个"小部件.它可以通过viewport()方法加入.

要实现透明度您只需致电:

viewport()->setAutoFillBackground( false );

并取决于其他设置(即父窗口小部件设置)您应该看到背景.