首先在dllmain.cpp中添加如下声明

HINSTANCE g_hInstance;
 g_hInstance = hInstance;

源码如下:

CPoint point;
 ::GetCursorPos(&point);
 HMENU hMenu;
 hMenu = ::LoadMenu(g_hInstance, MAKEINTRESOURCE(IDR_MENU_SC));
 HMENU hSubMenu;
 hSubMenu = ::GetSubMenu(hMenu,0);
 //EnableMenuItem(hSubMenu, ID_PEILIAO_MENU, MF_BYCOMMAND|MF_GRAYED);
 //EnableMenuItem(hSubMenu, ID__FENLEI_MENU, MF_BYCOMMAND|MF_GRAYED);
 //EnableMenuItem(hSubMenu, ID__TEXING_MENU, MF_BYCOMMAND|MF_GRAYED);
 //EnableMenuItem(hSubMenu, ID__CHENLIE_MENU, MF_BYCOMMAND|MF_GRAYED);
 //EnableMenuItem(hSubMenu, ID__TISHI_MENU, MF_BYCOMMAND|MF_GRAYED);
 int nCmd=::TrackPopupMenu(hSubMenu, TPM_TOPALIGN | TPM_LEFTALIGN | TPM_RETURNCMD, point.x, point.y, 0, m_hWnd, NULL);

if (nCmd == ID_PEIZHIG)
 {
  int nodeId(i);
  CComBSTR bstrObjName=_T("原料配制间");
  Fire_OnHCEvent(bstrObjName,0);
 }
 else if (nCmd == ID_FENLEIG)
 {
  int nodeId(i);
  CComBSTR bstrObjName=_T("品种分类间");
  Fire_OnHCEvent(bstrObjName,0);
 }
 else if (nCmd == ID_TEXINGG)
 {
  int nodeId(i);
  CComBSTR bstrObjName=_T("织品特性间");
  Fire_OnHCEvent(bstrObjName,0);
 }
 else if (nCmd == ID_CHENLIEG)
 {
  int nodeId(i);
  CComBSTR bstrObjName=_T("织品陈列间");
  Fire_OnHCEvent(bstrObjName,0);
 }
 else if (nCmd == ID_TISHIG)
 {
  int nodeId(i);
  CComBSTR bstrObjName=_T("温馨提示间");
  Fire_OnHCEvent(bstrObjName,0);
 }

ATL 工程下添加右击菜单的更多相关文章

  1. MTK Android 设置下添加一级菜单[ZedielPcbTest]

    功能描述:Android7.1.2 设置下添加一级菜单[ZedielPcbTest],点击ZedielPcbTest,启动ZedielPcbTest.apk应用. 编译:需要在out目录删除Settt ...

  2. maven工程下添加oracle驱动包

    maven工程手动安装oracle驱动包到本地仓库 下载ojdbc.jar包 这个当然是最好去官网下载了.http://mvnrepository.com这个仓库上有,具体页面地址为: http:// ...

  3. 痞子衡嵌入式:MCUXpresso IDE下添加新路径下源文件进工程编译的方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso IDE下添加新路径下源文件进工程编译的方法. 接着上篇文章 <MCUXpresso IDE下SDK工程导入与 ...

  4. win7下给右键菜单添加启动cmd命令

    win7下给右键菜单添加启动cmd命令 (2013-07-20 19:20:56) 转载▼ 标签: it 右键 cmd 分类: 小软件操作技巧     最近编辑器在用windows下的gvim,但进入 ...

  5. Magento添加一个下拉登陆菜单Create Magento Dropdown Login in a few minutes

    Dropdown login forms are not a feature many online stores use, but in some cases they could be quite ...

  6. 为下拉式菜单(DropDownList)添加第一个选项

    很多方法可以为为下拉式菜单(DropDownList)添加第一个选项,下面是Insus.NET小结了几个方法,仅供参考: Html code: <body>    <form id= ...

  7. 为工程添加上下文菜单(ContextMenu)

    上下文菜单大多数情况下都是为ListView中的Item添加的,长按2S左右跳出菜单,添加上下文菜单必须重写活动中的onCreateContextMenu()方法和onContextItemSelec ...

  8. 原生Js_实现简单的下拉折叠菜单(添加弹出动画效果)

    用javascript实现简单的下拉折叠菜单效果 实现步骤 (a)获得各操作的dom对象: (b)在所有菜单按钮对象上添加单击事件: (c)设置所有菜单按钮样式为空,并将当前按钮的样式设置为“acti ...

  9. 痞子衡嵌入式:MCUXpresso IDE下添加C++源文件进SDK工程编译的方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso IDE下添加C++源文件进SDK工程编译的方法. 最近有客户反映在MCUXpresso IDE下的SDK工程里添加 ...

随机推荐

  1. VC释放EXE资源文件

    原文地址:http://blog.csdn.net/wangningyu/article/details/4378378 今天有个朋友问到VC能否释放多个EXE.DLL或WAV等文件,我便做了个实例给 ...

  2. matlab中 hold on 与hold off的用法

    matlab中 hold on 与hold off的用法 hold on 是当前轴及图形保持而不被刷新,准备接受此后将绘制 hold off 使当前轴及图形不在具备被刷新的性质 hold on 和ho ...

  3. 新API:AttachThreadInput

    https://msdn.microsoft.com/fr-fr/library/windows/desktop/ms681956(v=vs.85).aspx

  4. Jquery 获取表单值如input,select等方法

    1 if($("input[name=item][value='val']").attr('checked')==true) //判断是否已经打勾 name即控件name属性,va ...

  5. MySQL源码 数据结构array

    MySQL源码中自己定义了许多数据结构,放在mysys的目录下,源码中通常都使用这些数据结构来组织存放数据,也更容易实现跨平台.   下面先来看下MySQL定义的动态数组: [源代码include/a ...

  6. check约束条件

    --约束:对列的值起一个约束性的作用,规定列的值的范围 --主键.外键.非空.自增长标识列.唯一列(unique).check约束 --check 约束 --在某个表里点击右键→设计→进去找到要约束的 ...

  7. winform异型不规则界面设计

    一,不规则WINFORM窗体 Author:unknown From:Internet在以前版本的Visual Basic或Visual C++中,创建不规则窗体和控件是一件很复杂的事,不仅需要调用大 ...

  8. java List遍历的方法

    List可以用序号来遍历,但通常推荐使用iterator来遍历Iterator itr = list.iterator();while (itr.hasNext()) { Object nextObj ...

  9. Spring之HelloWorld再起

    第一步:打开File->New->Other…,选择Java Project,创建标准Java项目. 第二步:在项目下添加lib文件夹用于存放jar文件,resources用于存放xml配 ...

  10. visual studio 资源视图 空白 解决方案

    visual studio 资源视图打开后显示空白的解决方案步骤: 在解决方案view下,右键点击工程 1 unload projects 完成第一步后仍然在解决方案view下,右键点击工程 2 re ...