Qt工具栏下拉式按钮

在toolbar上用动态方式添加控件。

需要有一个ToolButton,然后通过Menu在其中添加action,把menu绑定给ToolButton,然后把这个ToolButton加入到ToolBar中,测试代码如下:

 1 void MainWindow::AddDropDownToolbox()
 2 {
 3     QMenu* menu=new QMenu(this);
 4     menu->addAction(ui->action1);
 5     menu->addAction(ui->action2);
 6     menu->addAction(ui->action3);
 7     menu->addAction(ui->action4);
 8     menu->addAction(ui->action5);
 9     menu->addAction(ui->action6);
10     menu->addAction(ui->action7);
11     menu->addAction(ui->action8);
12     menu->addAction(ui->action9);
13     tb=new QToolButton(this);
14     tb->setMenu(menu);
15     tb->setPopupMode(QToolButton::InstantPopup);
16     QIcon icon;
17     icon.addFile(QString::fromUtf8(":/Icons/Icons/1-9.png"), QSize(), QIcon::Normal, QIcon::Off);
18     tb->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
19     tb->setText("下拉选择");
20     tb->setIcon(icon);
21     ui->toolBar->addWidget(tb);
22 }

运行效果如下:

至于其中各个action对应的动作行为,则和一般的action操作一样。

posted @ 2020-02-06 19:34  castor_xu  阅读(6604)  评论(0编辑  收藏  举报