将自定义小部件添加到Qt Designer

时间:2009-09-03 19:38:01

标签: qt qt-designer

我有以下自定义小部件:

class QDESIGNER_WIDGET_EXPORT MySpecialButton : public QAbstractButton
{
    Q_OBJECT
    ...etc...
};

Qt Designer识别这个小部件,我可以毫无问题地将它放到我的表单上。但是,查看属性编辑器时,只能看到QObject和QWidget属性。如何让Qt Designer认识到这也是一个QAbstractButton对象?

1 个答案:

答案 0 :(得分:2)

首先,确保您的类定义中包含Q_OBJECT宏。另外,请确保文件正确moc。如果这些都没有帮助,您可以调查QPushButtonQToolButton的声明方式,看看是否能提供任何提示。

最后,如果您需要电锯方法而不是手术刀,您可以定义要在类中设置的属性,将QAbstractButton函数作为要调用属性的函数。查看Q_PROPERTY宏。