Windows 10 如何使Qt使用用户定义的类?

Windows 10 如何使Qt使用用户定义的类?,windows-10,qt5,qt-creator,qplaintextedit,custom-widgets,Windows 10,Qt5,Qt Creator,Qplaintextedit,Custom Widgets,我想使用一个用户定义的类,而不是Ui_MainWindow类中生成的Qt,这样我就可以在Qt的GUI设计器上使用该控件。例如,目前定义如下: class Ui_MainWindow { public: QPlainTextEdit *list; // ... }; 我想使用我的用户定义类: class Ui_MainWindow { public: MyCustomQPlainTextEdit *list; // ... }; 我不能在ui_mainwindow.h头文件

我想使用一个用户定义的类,而不是Ui_MainWindow类中生成的Qt,这样我就可以在Qt的GUI设计器上使用该控件。例如,目前定义如下:

class Ui_MainWindow
{
public:
    QPlainTextEdit *list;
 // ...
};
我想使用我的用户定义类:

class Ui_MainWindow
{
public:
    MyCustomQPlainTextEdit *list;
 // ...
};
我不能在ui_mainwindow.h头文件中手动修改它,因为每当GUI设计器生成元数据时,该值都会丢失。 我是否可以阻止Qt使用该类,以便使用我自己的类?

如果MyCustomQPlainTextEdit继承自QPlainTextEdit,则可以将ui文件中的小部件升级到自定义类

在Qt Creator中打开您的ui文件,右键单击小部件并选择“升级到”

[

然后在打开的对话框中,添加自定义类,如下所示:

[

如果需要,请确保根据项目的设置方式更改头文件的路径。然后单击“添加”


添加自定义类后,单击“升级”,瞧,在生成的ui_uu.h.中创建自定义类。

Awesome!!太简单了。我对Qt creator是否有此功能有点绝望,我害怕做一些黑客来存档:@Jack Qt creator实际上可以做很多事情;对ui的视觉设计非常有用。玩得开心!