我正在使用visual studio 2010,Qt加载项等等都可以,然后使用Qt加载项创建新项目...当在VS中双击*.ui(实际表单)文件时它打开Qtdesigner,然后我放了一些控件在,但这根本不会改变我的代码:/
Qt表单已更改它包含那些控件但源文件与之前的构建我的项目相同.
我错过了什么?我认为Qtdesinger应该为我使用Qtdesigner创建的对象添加一些代码.
没有它我们必须编写所有的代码,好像没有Qtdesigner所以Qtdesinger是Visual Studio中的useles,我们可以通过手工编写一个表单接口来做同样的事情.非常感谢.
编辑:
好的我从Qt网站上复制了这个:
您正在引用.ui文件中的对象...
Visual Studio代码模型解析器仅解析C++源代码,这意味着无法访问.ui文件中定义的窗口小部件或对象.要解决此问题,Qt Visual Studio外接程序会自动生成.ui文件中的C++代码,方法是保存文件并在其上运行uic.每次构建项目时都会执行此步骤.如果代码完成不起作用,请尝试重建项目.在更新.ui文件后代码完成完全有效之前,您可能需要等待一段时间.有关更多信息,请参阅"修改项目属性"部分.它仍然不起作用......
您应该刷新代码模型Intellisense.这是通过打开解决方案资源管理器,调用项目的上下文菜单并激活项目Update Intellisense来完成的.
现在它看起来我遇到了这样的问题,但这根本没有帮助,更新了智能.我在visual studio中看不到这样的选项,它看起来我的visual studio插件无法正常工作.
它说"你应该刷新代码模型"Woot?有人可以解释我该怎么做.
以下是构建项目时的一些输出警告:
警告1警告:'C:\ Users\Admin\documents\visual studio 2010\Projects\VisualStudio\test\test.qrc'中没有资源.C:\ Users\Admin\documents\visual studio 2010\Projects\VisualStudio\test\RCC警告2警告LNK4099:找不到PDB'vc100.pdb'与'qtmaind.lib(qtmain_win.obj)'或'C:\Users\Admin\documents\visual studio 2010\Projects\VisualStudio\vc100.pdb'; 链接对象,好像没有调试信息C:\ Users\Admin\documents\visual studio 2010\Projects\VisualStudio\test\qtmaind.lib(qtmain_win.obj)
我将解释一些工作原理和文件之间的关系,希望这将解决您的问题.
使用设计器编辑ui文件时,将对ui文件本身进行所有更改.然后当你构建一些事情时会发生.
首先......将在ui文件上运行自定义构建步骤.正如Macke所说,这个构建步骤运行"uic",并将生成一个名为"ui_thenameofyouruifile.h"的文件.此文件所在的位置取决于您的项目设置,但如果您查看项目,则应在项目中看到名为Generated Files的文件夹.
如果您查看那里,您应该看到新生成的文件.这是您对表单进行更改时"更改"的代码.现在,如果这个文件没有更新,或根本不存在,那么你的项目设置就会搞砸了.在这种情况下,我会从项目中删除您的.ui文件并重新添加它.加载项应该是神奇的,并添加您需要的所有东西.再次构建它应该工作.(我想这可能是你的问题)
构建时应该发生的第二件事是,使用你的ui文件的类应该重新编译.通常,在创建ui文件时,还会创建一个随附的.h和.cpp文件.这是我们在窗口中执行任何有趣逻辑的地方.Qt设计师永远不会改变这门课程.
在头文件中,我们通过执行以下操作来引用ui文件:
namespace Ui {
class thenameofyouruifile;
}
#include "ui_thenameofyouruifile.h"
Run Code Online (Sandbox Code Playgroud)
然后我们添加一个成员变量
Ui :: thenameofyouruifile UI;
有几种方法可以做到这一点,但基本上就是这个想法.加载项应该配置您的项目,以便生成文件所在的目录包含在项目设置中的"其他包含目录"中,但这是另一个检查以确保您的代码真正链接到的地方正确生成的文件.
归档时间: |
|
查看次数: |
14752 次 |
最近记录: |