我想实现这个目标:
我创建了一个小部件并实现了透明化:
window.setAttribute( Qt::WA_TranslucentBackground);
window.setWindowFlags (Qt::FramelessWindowHint);
window.setGeometry( 0,0,1200, 800 );
window.show();
然后我覆盖了函数paintEvent(QPaintEvent *);使用QPainter制作椭圆。
但是表面仍然只是黑色。有人可以解释一下吗?
答案 0 :(得分:1)
看起来类似于我在类似的应用程序中所做的,但我也做了:
window.setAutoFillBackground(false);
也许这是你缺少的一块?
修改:另一个想法:在paintEvent
中,在绘制椭圆之前,是否使用完全透明的颜色填充小部件rect()
?