1、爲Widget添加右鍵菜單
//在構造函數添加菜單
ClassName::ClassName()
{
QAction *action_1 = new QAction("菜單選項1", this);
QAction *action_2 = new QAction("菜單選項2", this);
connect(action_1, SIGNAL(triggered(bool)), this, SLOT(doAction()));//按鍵信號
connect(action_1, SIGNAL(toggled(bool)), this, SLOT(doAction()));//兩種狀態選中信號
/*
注意兩種按鍵信號的區別,根據實際需要來選擇
*/
this->addAction(action_1);
this->addAction(action_2);
this->setContextMenuPolicy(Qt::ActionsContextMenu);
}
//響應菜單
void ClassName::doAction()
{
QAction *action = (QAction *)sender();
QString str = action->text();
if (str == "菜單選項1") {
doSomeThing();
} else if (str == "菜單選項2") {
doSomeThing();
}
}