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,如下图所示


3.添加widget

代码如下所示

  1. QLabel * labelCangege=new QLabel("灿\n哥\n哥");  
  2. //在“关于”按钮之前插入label  
  3. ui->mainToolBar->insertWidget(ui->actionAbout,labelCangege);  
  4. QWidget *widgetAppearance=new QWidget();  
  5. widgetAppearance->setFixedSize(QSize(60,60));  
  6. QCheckBox *checkBoxWeiWu=new QCheckBox(widgetAppearance);  
  7. checkBoxWeiWu->setGeometry(QRect(5,12,60,15));  
  8. checkBoxWeiWu->setText("威武");  
  9.   
  10. QCheckBox *checkBoxXiongZhuang=new QCheckBox(widgetAppearance);  
  11. checkBoxXiongZhuang->setGeometry(QRect(5,32,60,15));  
  12. checkBoxXiongZhuang->setText("雄壮");  
  13. //在“关于”按钮之前插入widget  
  14. ui->mainToolBar->insertWidget(ui->actionAbout,widgetAppearance);  
  15. //在“关于”按钮之前插入分隔符  
  16. ui->mainToolBar->insertSeparator(ui->actionAbout);  
效果如下图所示


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



版权声明:本文为灿哥哥http://blog.csdn.net/caoshangpa原创文章,转载请标明出处。 https://blog.csdn.net/caoshangpa/article/details/52239687

猜你喜欢

转载自blog.csdn.net/wojiuguowei/article/details/80469856