qt项目中我的一个工程现在为什么每次在ui界面中做修改后(如添加或删除一个控件),但运行结果不变。

qt项目中我的一个工程现在为什么每次在ui界面中做修改后(如添加或删除一个控件),编译运行时有提示保存,但运行结果不变。我自己尝试了好多方法,都不行,最后把project... qt项目中我的一个工程现在为什么每次在ui界面中做修改后(如添加或删除一个控件),编译运行时有提示保存,但运行结果不变。我自己尝试了好多方法,都不行,最后把project项中的shawod build 选项不钩选,运行下,就可以了。然后再次钩选 上,则在-build -desktop文件中生成的可执行文件也发生相应变化了。这是为什么呢?自己一直搞不懂。 展开
 我来答
百度网友dccd79ab8
2014-05-17 · TA获得超过739个赞
知道小有建树答主
回答量:292
采纳率:100%
帮助的人:183万
展开全部
主要原因是生成的ui_*.h没有更新
这是因为UI界面修改后, 所有的UI控件布局都依赖所生成的Ui_*头文件

你可以自己运行uic工具
当然你也可以当修改后运行下Qmake, 因为Qmake会自动运行Moc和Uic
这样你的Ui文件就更新了

而Shadow build只是辅助工具,用来生成别的版本build的工具而已
当你修改了project选项, 一般来说当你点运行的时候是会重新Qmake一下的, 这样你的UI文件又更新了

有问题HI
追问
谢谢你啊,这是我的一个工程出现这种情况,其它工程没有这种情况,点击run之后不是自动qmake吗。是不是我的这个工程在哪我做了什么修改配置,自己也不知道。我完了再找找。你说的自己运行uic工具是指怎么弄呢?
追答
点击Run, 如果没有文件缓存,才会运行Qmake, 否则仅仅是运行Jom, 一般来说它仅仅是个伪的Make, 在Windows下就是个nmake

你就Qmake一下就好了, 效果是一样的
具体Uic命令 一般是给你输入的.ui文件, 然后给-o 输出参数而已
详细的你可以找到UIC, 输出帮助看看
johnnysangel
2014-05-16 · TA获得超过5623个赞
知道大有可为答主
回答量:3264
采纳率:0%
帮助的人:2403万
展开全部
新build生成的文件没有覆盖旧的...
追问
谢谢。我们能否解决这个问题,它为什么产生这样的结果了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式