Content Table

QtCreator 中重构 Widget 的名字

QtCreator 中创建的 Qt Designer Form Class 包含三个文件: .h, .cpp, .ui,例如我们创建了一个 Form Class Widget,则包含下面三个文件:Widget.h, Widget.cpp, Widget.ui,其中的类名为 Widget,如果想要把其重命名为 MyWidget,则可以按照下面几步进行:

  • 文件重命名:
    • Widget.h -> MyWidget.h
    • Widget.cpp -> MyWidget.cpp
    • Widget.ui -> MyWidget.ui
  • 修改 MyWidget.ui 中的 objectName 为 MyWidget
  • 重构 MyWidget.h 中的类名:
    • Ui::MyWidget -> Ui::Widget
    • MyWidget -> Widget
  • 修改 MyWidget.h 中 #ifndef 的名字: WIDGET_H -> MYWIDGET_H
  • 修改 MyWidget.cpp 中的 #include "ui_Widget.h" -> #include "ui_MyWidget.h"

文件重命名

QtCreator 中文件名上 右键 > rename,重命名文件名为:

  • MyWidget.h
  • MyWidget.cpp
  • MyWidget.ui

QtCreator 中的 rename 修改文件名的同时会:

  • 修改 pro 文件里的 HEADERS,SOURCES,FORMS
  • 把其他文件中 #include “Widget.h” 自动修改为 #include “MyWidget.h”
  • 但是 #include “ui_Widget.h” 不会自动修改为 #include “ui_MyWidget.h”,这个需要我们自己手动修改

MyWidget.ui

MyWidget.ui 中修改 objectName 为 MyWidget

MyWidget.h

  • WIDGET_H 修改为 MYWIDGET_H

  • namespace Ui 中 Widget 重构为 MyWidget

  • class Widget 重构为 class MyWidget

MyWidget.cpp

修改 #include "ui_Widget.h"#include "ui_MyWidget.h"