QQ登录

只需一步,快速开始

3.上位机VC MFC根据表中数据动态生成菜单

[ 复制链接 ]
根据数据表动态生成菜单
功能展示
•在设计应用程序时,为了增加灵活性,经常根据需要动态生成菜单。当前实例实现了通过数据表内容,动态生成菜单的功能。
效果如图

3.上位机VC MFC根据表中数据动态生成菜单

3.上位机VC MFC根据表中数据动态生成菜单

要点提示
•动态生成菜单的关键问题是如何添加菜单项,与级联菜单 ,在MFC中,提供了Cmenu类用于操作和管理菜单,此类提供了许多方法用于添加菜单和级联菜单;
•其中AppendMenu函数用于在菜单的末尾添加一个新的菜单项;
•CreatePopupMenu函数用于创建一个弹出式菜单


实现功能
•1.新建一个基于对话框的应用程序
•2.在对话框 添加三个成员变量
•  CMenu menu;
•  HMENU h_menu ;
•  HMENU h_submenu;
•3.在对话框中添加以下三个函数
•  void LoadMenuFromDatabase();
•  void LoadSubMenu(CMenu* m_menu,CString str);
•BOOLIsHaveSubMenu(CString);
•在APP类中添加数据库存处理的变量
•_ConnectionPtrm_pCon;
•_RecordsetPtrm_pRecord;
•及在InitInstance()中初始化
•  AfxOleInit();
•
•  m_pCon.CreateInstance(__uuidof(Connection));
•  m_pRecord.CreateInstance(__uuidof(Recordset));
•
•  m_pCon->ConnectionString ="rovider=Microsoft.Jet.OLEDB.4.0; \
•  Data Source=./Menu.mdbersist SecurityInfo=False";
•  try
•  {m_pCon->Open("","","",-1);}
•  catch(...)
•  {
•  AfxMessageBox("数据库连接错误",0,0); exit;
•  }
•最后 一点
•在使用ADO技术时,需要导入一个ADO动态链接库msado15.dll,该动态库位于系统盘下的“Program Files\CommonFiles\System\ado\”目录下。
•例:如果你的系统盘为C盘,则该文件位于“C:\Program Files\Common Files\System\ado”目录中。所以需要打开工程文件,并展开“FileView”视图中的“Header Files”节点,然后双击“StdAfx.h”文件,将代码中的“d:\Program Files\CommonFiles\System\ado\msado15.dll”改为“c:\Program Files\CommonFiles\System\ado\msado15.dll”。
•
•具体看视频演示



源码及视频下载(仅电脑可见)
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:3.上位机VC MFC根据表中数据动态生成菜单.rar 
文件大小:929.2 KB  售价:1金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我


  

您的支持是我们创作的动力!  

  

您可花点闲钱积分自助任意充值

  

成为VIP会员 全站资源任意下载永久更新!











回复

使用道具 举报

点击查看
快速回复 返回列表 客服中心 搜索