前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >qt widget设置Qt::FramelessWindowHint和Qt::WA_TranslucentBackground, 会出现一个bug: 在最小化后还原时界面停止刷新

qt widget设置Qt::FramelessWindowHint和Qt::WA_TranslucentBackground, 会出现一个bug: 在最小化后还原时界面停止刷新

作者头像
bear_fish
发布2018-09-20 11:53:37
2.1K0
发布2018-09-20 11:53:37
举报

t widget设置Qt::FramelessWindowHint和Qt::WA_TranslucentBackground, 会出现一个bug: 在最小化后还原时界面停止刷新

Widget with Qt::FramelessWindowHint and Qt::WA_TranslucentBackground stops painting after minimize/restore

被这个问题折腾了好几天, 真特么郁闷

该bug在qt 5.1.1中修复, bugreport链接 https://bugreports.qt-project.org/browse/QTBUG-17548 这个bug都发现N久了, 现在才修复

之前的版本的话, 可以试下下面的方法, 基本可用, 但在setwindowflag后, 任务栏图标会滑动一下, 某些电脑可能还会略微闪烁 void TestDlg::changeEvent( QEvent* e ) {

if( e->type() == QEvent::WindowStateChange) { if(this->windowState() & Qt::WindowMinimized ) { //do something after minimize } else { setWindowFlags(Qt::Window);//set normal window flag setWindowFlags(Qt::Window | Qt::FramelessWindowHint | Qt::WindowMinimizeButtonHint);//and return to your old flags

this->showNormal(); } } } Qt 真是各种坑呐

补充: 该方法对qmainwindow无效, 在Qt5.1 qmainwindow 依然存在此问题

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015年07月17日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档