剛進新公司,據開發人員說存在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