Sur*_*h R 3 c++ qt widget qt5 qtoolbutton
我创建了一个自定义小部件,它必须在单击 ToolButton 时显示为弹出菜单。我怎么能做到这一点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;
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以将小部件添加到要在弹出菜单中显示的工具按钮:
myCustomWidgetAction * widgetAction = new myCustomWidgetAction(this);
ui->toolButton->addAction(widgetAction);
Run Code Online (Sandbox Code Playgroud)
myCustomWidget可以是任何小部件。您可以myCustomWidgetAction向工具按钮添加多个实例。
| 归档时间: |
|
| 查看次数: |
1326 次 |
| 最近记录: |