在Qt中,可以使用QMenu和QAction来创建菜单和菜单项。要给一个action添加分支,可以通过addMenu()方法将一个新的子菜单添加到该action上。
以下是一个示例代码,演示如何创建一个菜单,并给其中一个action添加分支:
#include <QtWidgets>
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
QMainWindow window;
// 创建主菜单栏
QMenuBar* menuBar = new QMenuBar(&window);
window.setMenuBar(menuBar);
// 创建文件菜单
QMenu* fileMenu = new QMenu("文件", menuBar);
menuBar->addMenu(fileMenu);
// 创建打开动作
QAction* openAction = new QAction("打开", &window);
fileMenu->addAction(openAction);
// 创建保存动作
QAction* saveAction = new QAction("保存", &window);
fileMenu->addAction(saveAction);
// 给保存动作添加分支菜单
QMenu* saveSubMenu = new QMenu("保存选项");
// 添加分支动作1
QAction* action1 = new QAction("选项1", &window);
saveSubMenu->addAction(action1);
// 添加分支动作2
QAction* action2 = new QAction("选项2", &window);
saveSubMenu->addAction(action2);
// 将分支菜单设置为保存动作的子菜单
saveAction->setMenu(saveSubMenu);
window.show();
return app.exec();
}
这个例子中,我们创建了一个名为”文件”的菜单,并在其中添加了”打开”和”保存”两个动作。然后,我们给”保存”动作添加了一个名为”保存选项”的分支菜单,并在该分支菜单中添加了两个子动作(选项1和选项2)。
当用户点击主菜单中的”文件->保存”时,会弹出包含这些分支动作的子菜单供选择。
内容由零声教学AI助手提供,问题来源于学员提问