2
私は現在グローバル名前空間にあるQDialogから派生したクラスを持っていて、それをプロジェクトの名前空間に移動したいと思います。 Qt Designerで "change objectName"関数を試しましたが、コロン文字を入力することはできません。Qtフォームクラスを別の名前空間に移動するにはどうすればよいですか?
私は現在グローバル名前空間にあるQDialogから派生したクラスを持っていて、それをプロジェクトの名前空間に移動したいと思います。 Qt Designerで "change objectName"関数を試しましたが、コロン文字を入力することはできません。Qtフォームクラスを別の名前空間に移動するにはどうすればよいですか?
だから、もう少し試してみると分かりました。デザイナーでは、オブジェクトツリーのクラス名に編集モードを入力します。スコープ演算子と共にクラス名の前に希望の名前空間を追加すると、.uiファイルが更新されます。新しい名前空間のすべてをラップすることによって、関連するヘッダーファイルを手動で更新する必要があります。
など。デザイナーでMyClass
からProjName::MyClass
に名前を変更し、ヘッダーを次のように変更します。
#ifndef MYCLASS_H
#define MYCLASS_H
#include <QDialog>
namespace MyProject {
namespace Ui {
class MyClass;
}
class MyClass : public QDialog
{/*...*/};
}
#endif // MYCLASS_H