ATL 工程下添加右击菜单
2013-08-01 19:44
204 查看
首先在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);
}
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 工程下添加右击菜单
- SWT模拟Eclipse左侧菜单,简单实现新建工程,新建包,添加用例等功能.
- 为ATL工程添加一个固有属性:
- mfc 为对话框工程添加工具条时,实现工具条的按下状态与菜单标记的同步实例
- ATL--创建简单的ATL之dll工程,给接口添加属性(实际上就是一个函数对)
- ATL--创建简单的ATL之dll工程,添加类和类的接口并在MFC中调用
- MFC 对话框工程中添加菜单(VC++ 6.0编译器)
- vc ATL 外壳编程添加windows右键菜单
- Vs2010 Atl工程手工添加连接点
- vs2013下,MFC单文档工程如何在菜单栏新增菜单,并添加响应函数
- 在MFC工程中添加ATL
- ATL--创建简单的ATL之dll工程,添加“ATL简单对象”类的参数说明
- 给Eclipse的工程导航视图添加自定义右键菜单
- CListCtrl添加右键菜单
- 把静态编译的QT添加到QTCreator当中创建新工程
- 给新建的Cocos2d-x 3.0rc0 的Win32工程添加CocoStudio库
- “add measurements”(添加度量)菜单问题
- Excel开发(VBA)— 在Excel里自动添加菜单
- 删除chrome添加应用程序快捷菜单
- 在工程中添加pch文件