0./目标:在Qcommbobox右键出来菜单,点击BCC校验,自动算出校验值填入编辑框;
1./UI界面选择Action editor,新建action
记住对象名:actionBCC
右键action,点击转到槽,选择triggered
点击BCC检验菜单标签时,会执行下面程序,可以添加自己的功能;
void frmTcpServer::on_actionBCC_triggered()
{
//再此添加你的代码
QMessageBox::warning(NULL, "warning", "BCC校验", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
}
主界面contextmenu policy属性选择:customContextMenuRequested
UI界面右键选择,转到槽,选择customContextMenuRequested
代码如下:点击右键时会响应如下代码
void MainWindow::on_MainWindow_customContextMenuRequested(const QPoint &pos)
{
Q_UNUSED(pos);
// QMenu *menuList; //自定义弹出式菜单
QMenu* menuList=new QMenu(this); //创建菜单
//添加Actions创建菜单项
menuList->addAction(ui->actionBCC);
menuList->exec(QCursor::pos()); //在鼠标光标位置显示右键快捷菜单
delete menuList; //手工创建的指针必须手工删除
}
完成的效果:
完整示例代码:https://www.lanzous.com/ib5opgb