如何将Qt表单类移动到另一个名称空间?

时间:2016-07-15 15:38:01

标签: c++ qt

我有一个派生自QDialog的类,它目前在全局命名空间中,我想将它移动到我的项目命名空间。我尝试了"更改objectName" Qt Designer中的函数,但它不允许我输入冒号字符。

1 个答案:

答案 0 :(得分:2)

所以,还有几分钟的尝试,我想出来了。在设计器中,在对象树中的类名称上输入编辑模式。在类名称前加上所需的命名空间以及范围运算符,它将更新.ui文件。然后,您必须通过将所有内容包装在新命名空间中来手动更新关联的头文件。

E.g。在设计器中将MyClass重命名为ProjName::MyClass,然后使标题看起来像这样:

#ifndef MYCLASS_H
#define MYCLASS_H

#include <QDialog>

namespace MyProject {

namespace Ui {
class MyClass;
}

class MyClass : public QDialog
{/*...*/};


}

#endif // MYCLASS_H