QT中ui更改后不能更新的解決方法


ui源文件到界面顯示的原理可以網上搜索,這里不再描述。簡單講就是先要從*.ui生成ui_*.h然后再編譯,所以界面未更新實際上是因為ui_*.h這個文件沒有更新導致的。

出現此問題后我嘗試了以下幾個方法:

1,在生成目標的文件夾內找到ui_*.h,復制到源代碼文件夾內覆蓋原來文件,成功

2,刪除源代碼文件夾內ui_*.h后,clear all 然后再重新編譯,失敗。

3,uic *.ui -o ui_*.h 失敗,生成的ui_*.h是空的 

根治的方法:

項目設置文件.pro內增加 UI_DIR=./UI,同時刪除掉源代碼目錄中ui_*.h,clear all,->qmake->rebuilt all

總結:導致ui_*.h文件沒有更新的原因是源代碼中#include ui_*.h的位置和實際生成的位置不同,引用的是老的ui_*.h,設置UI_DIR后就規定了位置於是不會出錯了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM