QT toolbutton添加下拉菜单,实现选择菜单项1,文本编辑框的值加1,选择菜单项2,文本编辑框的值减1
时间: 2023-09-18 16:12:11 浏览: 302
可以使用QToolButton的setPopupMode方法设置下拉菜单模式为菜单模式,然后使用QMenu添加菜单项,并关联对应的槽函数实现相应的操作。
示例代码如下:
```cpp
// 创建QToolButton和QMenu
QToolButton *toolButton = new QToolButton(this);
QMenu *menu = new QMenu(this);
// 添加菜单项,并关联对应的槽函数
QAction *addAction = menu->addAction(tr("Add 1"));
connect(addAction, &QAction::triggered, [=]() {
int value = lineEdit->text().toInt();
lineEdit->setText(QString::number(value + 1));
});
QAction *subAction = menu->addAction(tr("Subtract 1"));
connect(subAction, &QAction::triggered, [=]() {
int value = lineEdit->text().toInt();
lineEdit->setText(QString::number(value - 1));
});
// 设置QToolButton的下拉菜单模式为菜单模式,并设置QMenu为其菜单
toolButton->setPopupMode(QToolButton::MenuButtonPopup);
toolButton->setMenu(menu);
// 将QToolButton添加到布局中
layout->addWidget(toolButton);
```
其中,lineEdit为文本编辑框的指针,layout为QToolButton所在的布局的指针。
阅读全文