编译时QVision Widget错误
只有一个错误,直到我将其用于我的研究!
Warning: Z-order assignment: " is not a valid widget. FILE: qvvideoreaderblockwidget.ui
没有线路号码。 我试图find,但没有看到一个开放式的部分。
我该怎么做才能正确编译这个库?
在Qt Creator之外编辑ui文件。 用'zorder'标签删除行。 然后在Qt Creator中打开并重新编译。 它对我而言是完美的,警告不再出现。
好吧,我有这个,也让我厌恶了。 我不知道发生了什么事情,但并不严重。 我想,打破和重build所有的布局可能会解决它。 其他框架倾向于很多警告,但我是Qt的新手,而不是一个。 我去了另一位编辑,并删除了一行(我记得最清楚的):
<z-order>verticalSpacer</z-order>
这也是许多其他行也是z顺序标签。 我用这个标签删除了这一行,并重build了所有的东西。 问题没有了。 有趣的是,当我看到它的时候,所有的z顺序标签都从我的文件中消失了。 这肯定是一个错误,但显然是一个小小的后果; 除了那些讨厌看Qt被宠坏的美丽之外的人。
ui-file qvvideoreaderblockwidget.ui是否包含“Promoted Widget”? 如果是这样,请使用(Qt4-)devise器的“Promoted widgets”对话框来确保提升的widget类的头部被声明为“global include”。
如果自定义窗口小部件类名为“MyWidget”并且头部命名为“mywidget.h”,并且成员窗口小部件将命名为“myWidget”,则uic将生成ui类的代码,如下所示:
#include <mywidget.h> class qvvideoreaderblockwidget { public: MyWidget* myWidget; // ... };
当我在devise师中删除了相当大一部分东西时,发生在我身上。 调查显示,devise师未能删除与我删除的小部件有关的zorder标签(顺便说一下,其中包含一些其他小部件)。
删除行build议清除了问题。 如果你有一个zorder标签的负载,你可能需要小心删除与删除项目相关的一个。
我有同样的问题,并在运行/编译源之前从输出文件夹(debugging或释放)删除.exe文件,解决了这个问题。
在我的情况下,我已经忘记将我的GUI类的头文件添加到.pro
而其源文件被添加到.pro
。