中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

發現以前在Qt4中使用winEvent寫的邊緣拖動無法通過編譯.

發布時間:2020-07-27 07:03:51 來源:網絡 閱讀:467 作者:WZM3558862 欄目:開發技術

之前項目的代碼從Qt4遷移到Qt5, 發現以前在Qt4中使用winEvent寫的邊緣拖動無法通過編譯.

查了一下原來是在Qt5中已經移除winEvent, 并使用nativeEvent來代替.

那么在工程中只需要略加修改即可使用, 主要改兩個地方:

1. 加入nativeEvent函數:   


[cpp] view plaincopy發現以前在Qt4中使用winEvent寫的邊緣拖動無法通過編譯.發現以前在Qt4中使用winEvent寫的邊緣拖動無法通過編譯.

  1. bool MainDialog::nativeEvent(const QByteArray &eventType, void *message, long *result)  

  2. {  

  3.     Q_UNUSED(eventType);  

  4.   

  5.     MSG* msg = reinterpret_cast<MSG*>(message);  

  6.     return winEvent(msg, result);  

  7. }  



2. winEvent中在原來需要返回給父類處理的地方加個判斷:  



[cpp] view plaincopy發現以前在Qt4中使用winEvent寫的邊緣拖動無法通過編譯.發現以前在Qt4中使用winEvent寫的邊緣拖動無法通過編譯.

  1. bool MainDialog::winEvent(MSG *message, long *result)  

  2. {  

  3.     ...  

  4.     if (message->message != WM_NCHITTEST )  

  5.     {  

  6. #if QT_VERSION < 0x050000  

  7.         return QDialog::winEvent(message, result);  

  8. #else  

  9.         return QDialog::nativeEvent("", message, result);  

  10. #endif  

  11.     }  

  12.     ...  

  13. }  



這就可以使用了, 并且可以向后兼容.


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

辉县市| 宝应县| 晋中市| 老河口市| 保康县| 宜城市| 黎城县| 南投市| 康定县| 赤壁市| 紫云| 钦州市| 凌海市| 苍梧县| 普洱| 黄浦区| 陆河县| 中超| 金坛市| 南川市| 岳普湖县| 榆树市| 泌阳县| 贵定县| 西贡区| 隆子县| 桑日县| 张家界市| 思南县| 个旧市| 开江县| 马尔康县| 浦县| 唐河县| 延庆县| 奎屯市| 瓮安县| 绍兴县| 宕昌县| 北海市| 吉木萨尔县|