刚进新公司,据开发人员说存在QT5.3.1下触控笔没法工做,而在QT5.2.1下能正常工做,研究了一下。windows
Steps:测试
1. 首先固然是看下问题是否真的存在。测试状况:code
环境 | 结果 | 备注 |
QT5.2.1, win 8.1 32bit, mingw | 触控笔正常工做 | |
QT5.3.1, win 8.1 32bit, mingw | 触控笔没法工做 | 用手指能够正常触控 |
2. 目前的状况来看应该是QT发布QT5.3.x时引入的新BUG,决定到QT-PROJECT上的BUGREPORTS搜下是否已经有此BUG,orm
输入关键字PEN,直接找到了 https://bugreports.qt-project.org/browse/QTBUG-39353, 问题如出一辙。开发
3. 在评论中此BUG得知已经被修复, 修改代码的CODE REVIEW页面见:https://codereview.qt-project.org/#/c/87141/get
修改的代码以下:https://codereview.qt-project.org/#/c/87141/3/src/plugins/platforms/windows/qwindowsmousehandler.cpp
源码
4. 把此代码更新到QT5.3.1的源码中,从新编译了plugins/platforms/windows.pro,替换了\plugins\platforms下的qwindows.dll, 再次测试原来的同一个程序,触控笔能够正常工做了!qt
5. DONE!it