QT创建者不会更新.ui文件,而设计者

时间:2019-07-03 08:07:21

标签: c++ qt

我正在努力在以前使用QT Creator创建的GUI上添加一些新功能。首先,我尝试从设计器进行编辑,但是当我运行项目时,所做的更改没有显示出来。因此,我从.h文件中添加了一些新按钮,还为.cpp文件中的按钮添加了一些功能,当我运行项目时它们可以正常工作,但是所做的更改在设计器中不可见。

我尝试禁用影子构建,重新构建所有镜像,从.cpp文件中删除.h.pro文件,然后再次构建,但是没有一个起作用。

我可以做些什么使在设计器中可以看到对.h文件所做的更改?

  

注意:我正在Windows 10上使用QT Creator 4.9.1

1 个答案:

答案 0 :(得分:1)

Qt设计器仅用于编辑XML文件(.ui)。而且只有在Qt Designer中可以看到对该文件所做的更改。通过代码(在.cpp文件中)添加任何GUI元素在Qt Designer中不可见。

那么为什么在Qt Designer中所做的更改不可见?可能有太多原因。我想到的最常见的方法之一是在Qt Designer中提升小部件。打开您的.ui文件,然后检查您尝试添加内容的小部件是否实际上是QWidget,QLabel ... etc。如果某些内容不是Qt基类,则对.ui文件进行MOC处理时,您的更改将被覆盖。您也可以查看MOC文件以获得有用的信息(自动生成的ui_something.h)。还涉及多个.ui文件吗?尝试向他们添加一些东西,看看运行该项目会发生什么。

编辑:changes I made in the .h file到底是什么意思?如果您是指自动生成的ui_something.h,则在您构建项目后就会将其覆盖。