• 6986阅读
  • 4回复

[提问]关于透明窗体刷新的问题 [复制链接]

上一主题 下一主题
离线yuants
 
只看楼主 倒序阅读 楼主  发表于: 2011-01-07
— 本帖被 XChinux 执行加亮操作(2011-01-11) —
最近在发现,QT窗体透明的情况下,会引起父窗体刷新,请问应该如何处理,才不至于让父窗体刷新。
如创建一窗体QWidget A(透明,通过setAttribute(Qt::WA_TranslucentBackground); 或setStyleSheet()方式设置透明),此时在A窗体上创建QWidget B(透明,方法同上),然后在B窗体上再创建QWidget C(透明,方法同上)。
同时A,B,C中都响应PaintEvent()方法贴图等操作。此时如果在C窗体上绘图,在paintEvent()中把图片drawPixmap()的方法Draw到窗体,此时发现响应C的paintEvent的同时,B,A的paintEvent也同时响应了,且如果A是在窗体D上创建,不管D是否透明,D的paintEvent也会同时响应。
问题是我只要C刷新,请问该如何处理?
[ 此帖被yuants在2011-01-07 13:05重新编辑 ]
离线yuants
只看该作者 1楼 发表于: 2011-01-10
我顶,跪求好的方法或建议。
我看好多小机上都能实现透明情况下的橡皮擦功能,难道他们透明情况下不会引起父窗体刷新?
离线yuants
只看该作者 2楼 发表于: 2011-01-11
问题解决,结贴
离线heartj
只看该作者 3楼 发表于: 2011-01-12
能说下解决方法吗
离线hyh0lh

只看该作者 4楼 发表于: 2013-07-18
是啊,能说下解决方案吗?我现在也遇到透明窗体控件刷新的问题。
快速回复
限100 字节
 
上一个 下一个