2011-09-02 62 views
1

我有一個名爲保存的現有菜單,在其中我想添加兩個菜單,保存新建和保存編輯。將插槽添加到自動創建的菜單項

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) 

我該怎麼做?

回答

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())); 

或使用信號/插槽編輯器直接連接設計器內的動作。

1

我認爲here你會找到你想要的...

相關問題