Qt 修改UI后运行不生效


问题:qt修改ui文件,运行后却没有更新.

原因:程序中使用的ui_xx.h文件不是最新的文件

解决方案:

1、取消勾选Projects的shadow build或项目设置文件pro内增加 UI_DIR

以上是网上查到的方案。

qmake 的shadow build目录不可以是源码目录的子目录,在shadow-build之前,为了将生成物和源码尽可能的分开,一般都会设置很多qmake的变量。

DESTDIR = $$PWD/bin

目标文件放置位置

DLLDESTDIR = $$[QT_INSTALL_BINS]

win下拷贝动态库到qt安装路径

MOC_DIR = $$PWD/temp

moc的产物放置何处

RCC_DIR = $$PWD/temp

rcc的产物放置何处

UI_DIR = $$PWD/temp

uic的产物放置何处

OBJECTS_DIR =

PWD/temp/ TARGET

编译器生成的.o(.obj)等文件放置


2、个人方案

猜测第一次build生成的ui_xx文件后,再次运行不会去重新生成该文件,那么只要clean Projects删除相关文件,操作后可以发现build目录下的ui_xxx文件清除了,再次重新构建即可。