Qt为工具栏按钮QToolButton添加下拉菜单

效果如下:

在这里插入图片描述

主要代码如下:

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    createToolButton();
}

void MainWindow::createToolButton()
{
    // 创建QToolButton
    QToolButton *toolButton = new QToolButton(this);
    toolButton->setIcon(QApplication::style()->standardIcon(QStyle::SP_ComputerIcon));
    toolButton->setToolButtonStyle( Qt::ToolButtonTextUnderIcon);
    toolButton->setPopupMode(QToolButton::InstantPopup);

    // 创建QMenu
    QMenu *menu = new QMenu();
    menu->addAction(QApplication::style()->standardIcon(QStyle::SP_MessageBoxCritical), tr("图标视图"));
    menu->addAction(QApplication::style()->standardIcon(QStyle::SP_MessageBoxQuestion), tr("细节视图"));

    // 为QToolButton设置菜单
    toolButton->setMenu(menu);
}

本文涉及工程代码:

https://gitee.com/bailiyang/cdemo/tree/master/Qt/61QToolButtonMenu/QToolButtonMenu



若对你有帮助,欢迎点赞、收藏、评论,你的支持就是我的最大动力!!!

同时,阿超为大家准备了丰富的学习资料,欢迎关注公众号“超哥学编程”,即可领取。

在这里插入图片描述

  • 1
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
Qt 中,可以使用 QToolBar 类来创建工具栏,并且可以在工具栏添加下拉菜单。下面是一个简单的示例代码,展示了如何添加一个带有下拉菜单工具栏: ```cpp #include <QtWidgets> int main(int argc, char *argv[]) { QApplication app(argc, argv); QMainWindow mainWindow; QToolBar *toolBar = new QToolBar("My Toolbar", &mainWindow); QAction *action1 = new QAction(QIcon(":/icons/icon1.png"), "Action 1", &mainWindow); QAction *action2 = new QAction(QIcon(":/icons/icon2.png"), "Action 2", &mainWindow); QMenu *menu = new QMenu(&mainWindow); menu->addAction("Menu Item 1"); menu->addAction("Menu Item 2"); QToolButton *dropdownButton = new QToolButton(&mainWindow); dropdownButton->setText("Dropdown"); dropdownButton->setPopupMode(QToolButton::InstantPopup); dropdownButton->setMenu(menu); toolBar->addAction(action1); toolBar->addAction(action2); toolBar->addWidget(dropdownButton); mainWindow.addToolBar(toolBar); mainWindow.show(); return app.exec(); } ``` 在这个示例中,我们创建了一个 `QToolBar` 对象,并将其添加到 `QMainWindow` 中。然后,我们创建了两个 `QAction` 对象,分别代表工具栏上的两个动作。接下来,我们创建了一个 `QMenu` 对象,并向其添加了两个菜单项。然后,我们创建了一个 `QToolButton` 对象,并将其设置为下拉模式,将 `QMenu` 对象设置为其菜单。最后,我们将动作和下拉按钮添加工具栏中,并将工具栏添加到主窗口中。 你可以根据自己的需求进行修改和扩展,例如更改图标、文本和菜单项。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

百里杨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值