Qt自定义工具栏,类似word

1.相关函数

QToolBar类包含函数addWidget(QWidget *widget)和insertWidget(QAction *before, QWidget *widget),说明工具栏不仅可以addAction,还可以添加已有的或者自定义的widget,这样的话,做成类似word的工具栏就指日可待了

addwidget:将widget添加为工具栏的最后一项

insertWidget:在指定的action之前插入widget

insertSeparator在指定的action之前插入分隔符

2.添加action

先用界面编辑器给工具栏随便添加几个acton,如下图所示

Qt自定义工具栏,类似word_第1张图片

3.添加widget

代码如下所示

    QLabel * labelCangege=new QLabel("灿\n哥\n哥");
    //在“关于”按钮之前插入label
    ui->mainToolBar->insertWidget(ui->actionAbout,labelCangege);
    QWidget *widgetAppearance=new QWidget();
    widgetAppearance->setFixedSize(QSize(60,60));
    QCheckBox *checkBoxWeiWu=new QCheckBox(widgetAppearance);
    checkBoxWeiWu->setGeometry(QRect(5,12,60,15));
    checkBoxWeiWu->setText("威武");

    QCheckBox *checkBoxXiongZhuang=new QCheckBox(widgetAppearance);
    checkBoxXiongZhuang->setGeometry(QRect(5,32,60,15));
    checkBoxXiongZhuang->setText("雄壮");
    //在“关于”按钮之前插入widget
    ui->mainToolBar->insertWidget(ui->actionAbout,widgetAppearance);
    //在“关于”按钮之前插入分隔符
    ui->mainToolBar->insertSeparator(ui->actionAbout);
效果如下图所示

Qt自定义工具栏,类似word_第2张图片

源码链接:详见http://blog.csdn.net/caoshangpa/article/details/52239687的评论



你可能感兴趣的:(Qt)