我创建了一个自定义小部件,单击“工具按钮”时必须将其显示为弹出菜单。我该怎么做Qt 5.1.1
?
您应该创建自定义QWidgetAction
添加到弹出菜单。
这是一个示例QWidgetAction
:
#include <QWidgetAction>
class myCustomWidgetAction: public QWidgetAction
{
Q_OBJECT
public:
explicit myCustomWidgetAction(QWidget * parent);
protected:
QWidget * createWidget(QWidget *parent);
};
myCustomWidgetAction::myCustomWidgetAction(QWidget * parent):QWidgetAction(parent) {
}
QWidget * myCustomWidgetAction::createWidget(QWidget *parent){
myCustomWidget * widget=new myCustomWidget(parent);
return widget;
}
然后,您可以将小部件添加到工具按钮中,以显示在弹出菜单中:
myCustomWidgetAction * widgetAction = new myCustomWidgetAction(this);
ui->toolButton->addAction(widgetAction);
myCustomWidget
可以是任何小部件。您可以将多个实例添加myCustomWidgetAction
到toolButton中。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句