在Qt 4.7中,如何将弹出菜单添加到QToolbar按钮?

BWH*_*zel 14 c++ qt

我是Qt的新手,目前正在使用Qt Creator和原始C++代码.我设法通过向两者添加QAction对象来实现一些简单的功能,包括菜单和工具栏.但是我遇到了一些困难:

我想要做的是有一个菜单选项,它有一个子菜单,例如New,带有一个项目的子菜单,并在QToolbar上复制它.我在菜单中管理它:New作为QMenu,子菜单项作为QAction对象.我无法看到如何让它在工具栏中工作,例如一个New按钮,当点击它时,它会运行"默认"QAction(例如第一个子菜单项),但是右边有一个较小的菜单按钮提供所有其他选项.我想这类似于Office工具栏上的撤消/重做按钮.

ser*_*nko 23

我相信QToolButton小部件应该可以正常运行,看看以下示例是否适用于您:

QMenu *menu = new QMenu();
QAction *testAction = new QAction("test menu item", this);
menu->addAction(testAction);

QToolButton* toolButton = new QToolButton();
toolButton->setMenu(menu);
toolButton->setPopupMode(QToolButton::InstantPopup);
toolBar->addWidget(toolButton);
Run Code Online (Sandbox Code Playgroud)

希望这有帮助,问候