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操作一样。