Qt小部件项目中的Ui名称空间

时间:2012-08-13 22:55:43

标签: c++ qt namespaces

我有一个名为“SeasonCreator”的Qt小部件项目,我想知道Qt小部件项目的结构。

ui_seasoncreator.h文件是隐藏的,但是当你查看它时,它定义了一个名为“Ui”的命名空间,并且它是一个类SeasonCreator的声明,它继承自Ui_SeasonCreator,即c。

在seasoncreator.h文件中,还有一个名为“Ui”的命名空间,还有一个名为“SeasonCreator”的类的声明。当我点击查找其原始声明时,它会引导我在ui_seasoncreator.h文件中声明Ui :: SeasonCreator。

这些命名空间和类的目的是什么?这两个定义是否相关?

这些Ui :: SeasonCreator声明中的任何一个都与seasoncreator.h中的自定义SeasonCreator类有关吗?

1 个答案:

答案 0 :(得分:3)

  

这些命名空间和类的目的是什么?

ui_XXX.h中的代码是使用设计器创建表单时自动生成的代码。它被放入Ui命名空间。

  

这两个定义是否相关?

我假设你指的是这样的东西:

namespace Ui { class SeasonCreator; }

这是类的前向声明,它是生成的代码的一部分,使您的类可以访问自定义表单中的窗口小部件。

  

这些Ui :: SeasonCreator声明中的任何一个都与seasoncreator.h中的自定义SeasonCreator类有关吗?

将您的自定义代码与生成的代码链接起来。您应该有一个名为Ui::SeasonCreator *ui的自定义类的成员变量,它是您用来访问生成的Ui类的对象。