添加QMainWindow自帶的標准菜單欄和菜單
- 常用標准菜單代碼:
//添加菜單欄
QMenuBar *menuBar;
menuBar = new QMenuBar(this);
this->setMenuBar(menuBar);
//給菜單欄添加標准文件菜單
QMenu *menuFile;
menuFile = new QMenu(menuBar);
menuBar->addAction(menuFile->menuAction());
//設置文本和快捷鍵, 通常導航欄中&F指Alt+F, 菜單中&O指Ctrl+O
menuFile->setTitle(tr("File(&F)"));
//給文件菜單添加子菜單
QAction *actionOpen;
actionOpen = new QAction(this);
actionOpen->setStatusTip(tr("Open an existing file")); //設置狀態欄提示, 鼠標懸浮時狀態欄會提示對應信息
connect(actionOpen, &QAction::triggered, this, &MainWindow::open); //關聯槽函數
QAction *actionSave;
actionSave = new QAction(this);
menuFile->addAction(actionOpen);
menuFile->addSeparator();//給菜單加分隔條
menuFile->addAction(actionSave);
//給Open和Save菜單設置文本和快捷鍵
actionOpen->setText(tr("Open(&O)"));
actionSave->setText(tr("Save(&S)"));
-
效果如圖
-
一些常用的菜單, 可以引用Qt中的標准菜單, 代碼如下:
openAction = new QAction(tr("&Open"), this);
//設置快捷鍵為Qt標准快捷鍵: Qt標准快捷鍵可查Qt助手QKeySequence, Qt標准快捷鍵具有跨平台的特點.
openAction->setShortcut(QKeySequence::Open);