我有一个名为save的现有菜单,在其中我想添加两个菜单,Save New和Save Edits。
QMenu *menu = new QMenu(this);
menu->addAction("Save New");//void saveNew()
menu->addAction("Save Edits");//void saveEdits()
ui.saveButton->setMenu(menu);
我已经找到了合适的功能并发现了这个但我需要帮助实现它。
QAction * QMenu::addAction ( const QString & text, const QObject * receiver, const char * member, const QKeySequence & shortcut = 0 )
我该怎么做?。
答案 0 :(得分:7)
menu->addAction("Save New", this, SLOT(saveNew()));
使用与connect
调用相同的参数:
QAction *saveAction = menu->addAction("Save New");
connect(saveAction, SIGNAL(triggered()), this, SLOT(saveNew()));
如果菜单是在设计器中创建的,则可以连接同时创建的相应操作:
connect(ui.saveAction, SIGNAL(triggered()), this, SLOT(saveNew()));
或使用信号/插槽编辑器直接连接设计器中的操作。