QT写点击按钮上方显示多个选项的一块
时间: 2024-03-09 20:44:20 浏览: 35
可以使用 QToolButton 类来实现一个按钮和下拉菜单的组合,当用户点击按钮时,会弹出一个菜单,可以在其中选择多个选项。
下面是示例代码:
```cpp
QToolButton *toolButton = new QToolButton(this); // 创建工具按钮
QMenu *menu = new QMenu(this); // 创建菜单
menu->addAction("选项一");
menu->addAction("选项二");
menu->addAction("选项三");
// 添加一个动作,用于触发菜单的显示
QAction *action = new QAction("更多选项", this);
toolButton->setDefaultAction(action);
// 将菜单设置为工具按钮的菜单
toolButton->setMenu(menu);
// 设置弹出方式为 InstantPopup,这样菜单会在点击按钮时立即弹出
toolButton->setPopupMode(QToolButton::InstantPopup);
// 将工具按钮添加到布局中
QVBoxLayout *layout = new QVBoxLayout(this);
layout->addWidget(toolButton);
```
这样,当用户点击工具按钮时,会弹出一个菜单,可以在其中选择多个选项。如果需要获取用户选择的选项,可以使用 QMenu 的 selectedIndexes() 或 selectedActions() 方法来获取用户选择的索引或动作。