Experience

最近在封装一些类的时候,打算做一个窗口框架,能实现拖动、缩放、最大最小化、基本样式等功能,可不慎遇见一件无比蛋疼的事情,QWidget最小化后再恢复正常界面,最小化按钮居然仍处于hover状态,而且其它所有控件都看不到hover时的样式。

之前在外面百度找遍了没找到解决办法,周围的人听我描述了问题之后大多不屑理会,无奈只好回来谷歌,哇咔咔,终于找到了。

问题描述

先听听别人是怎么说的——我有一个透明(Qt::WA_TranslucentBackground)无边框(Qt::FramelessWindowHint)的Widget。当我的界面(通过按钮或其它方式)最小化之后,通过编程的方式(Message Box或showNormal()函数)还原界面,程序就不再响应paint事件了。

我在一个单独的界面中重现了这个问题,程序启动后点击按钮,使之最小化,3秒之后恢复正常界面。还原之后,按钮不再响应mouse over event从而改变它的样式,但是你可以点击它,使界面再次最小化。一旦你点击按钮,一切都恢复正常了。注意:如果程序还原并处于其它界面后面,此时你手动将它放到最前面,该问题不会出现。

Something else

我自己电脑上装的是qt5.5.0,这个问题不会出现,所以应该是以前的qt版本中会出现这个问题,现在已经修复了。

如果使用旧版本的qt,该如何解决这个问题呢?

我自己没想到解决办法,且看别人是怎么做的吧——

1

2

3

最新文章

  1. ASP.NET MVC Model绑定(二)
  2. mysql 主从同步原理
  3. Evolutionary Computing: 4. Review
  4. node-webkit教程(11)Platform Service之shell
  5. Ubuntu “无法获得锁”解决方案(E: 无法获得锁 /var/cache/apt/archive
  6. c++ ip地址相关
  7. TimesTen的安装和连接
  8. UVA1588(Kickdown)。
  9. RH253读书笔记(5)-Lab 5 Network File Sharing Services
  10. MyBatis源码解析【4】反射和动态代理
  11. CYQ.Data 对于分布式缓存Redis、MemCache高可用的改进及性能测试
  12. 如何安装MySQL5.5.62
  13. python中使用Opencv进行车牌号检测——2018.10.24
  14. 服务器死机 导致 mongo 挂掉
  15. Excel列名和列序号转换
  16. 20155211 网络对抗 Exp9 Web安全基础实践
  17. CTO、CIO
  18. UVa 714 Copying Books - 二分答案
  19. html选择器
  20. stringBuild置空方法

热门文章

  1. discuz 3.x 核心文件class_core.php解析
  2. 从“黑掉Github”学Web安全开发
  3. Three.js 入门指南(核心对象)
  4. PowerDesigner 逆向工程 Mariadb 失败
  5. 轻松掌握:JavaScript模板方法模式
  6. Intent(二)隐式调用intent
  7. IOS开发基础知识--碎片19
  8. 【代码笔记】iOS-网络嗅探
  9. C++算法实源码分析
  10. 《javascript权威指南》读书笔记——第二篇