我想使用用户定义的类,而不是在 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 文件,右键单击小部件并选择 Promote To
[
然后在打开的对话框中,添加您的自定义类,如下所示:
[
如果需要,请务必根据项目的设置方式更改头文件的路径。然后点击Add
。
添加自定义类后,单击 Promote
瞧,生成的 ui_<blah>.h
中的自定义类。
关于windows-10 - 如何让 Qt 使用用户定义的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49431734/