分享

QT Creator 使用 design 修改 ui界面编译后界面未更新问题的解决 From EricQu

 风之library 2014-10-10

今日遇到一个奇怪的问题,描述如题。

网上搜索了一些解决方案,说的不是很清楚,经过一些时间的摸索,这里总结一下解决方法。

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后就规定了位置于是不会出错了。

引用请注明原作者与出处。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多