一般是这样写的:
point.x = LOWORD (lParam) ;
point.y = HIWORD (lParam) ;
ClientToScreen (hwnd, &point) ;
TrackPopupMenu (hMenu, TPM_RIGHTBUTTON, point.x, point.y, 0, hwnd, NULL)
其中,point是POINT型的,用来得到鼠标点的位置,hMenu是HMENU型的,在响应WM_CREATE时可用LoadMenu得到菜单句柄
point.x = LOWORD (lParam) ;
point.y = HIWORD (lParam) ;
ClientToScreen (hwnd, &point) ;
TrackPopupMenu (hMenu, TPM_RIGHTBUTTON, point.x, point.y, 0, hwnd, NULL)
其中,point是POINT型的,用来得到鼠标点的位置,hMenu是HMENU型的,在响应WM_CREATE时可用LoadMenu得到菜单句柄
解决方案 »
- 怎么改变CBitmap类中位图文件的分辨率,并且能用GetBitmapBits提取到他的图像数据
- MFC 双缓冲
- 打印结果是:
- 问个弱的。。
- 高分求如何不用MFC将BMP文件转换成JPG文件?
- 有谁知道五子棋的算法!
- wchar_t与char怎么相互转换(在线等待)
- 由《测试你的C++水平(UP着才得分!) (paladinsong ) 》一贴所想
- 我想学VC,不知有无必要重新学过C?
- 关于MSDN的一个问题。
- vc 如何获取DLL中的一个结果数据
- 关于vc.net一个UserName->SelectCommand->Parameters->Item[0]->Value=TBoxUserID->Text问题,
HMENU LoadMenu(
HINSTANCE hInstance,
LPCTSTR lpMenuName
);
那么这两个参数分别填写什么呢?貌似没有联系到菜单的资源ID
HINSTANCE hInstance,
LPCTSTR lpMenuName 《----菜单ID的名字
);
lpMenuName
[in] Pointer to a null-terminated string that contains the name of the menu resource. Alternatively, this parameter can consist of the resource identifier in the low-order word and zero in the high-order word. To create this value, use the MAKEINTRESOURCE macro
通常用MAKEINTRESOURCE 这个宏
NULL,
MAKEINTRESOURCE(ID),
);
point.x = LOWORD (lParam) ;
point.y = HIWORD (lParam) ;
ClientToScreen (hwnd, &point) ;
TrackPopupMenu (hMenu, TPM_RIGHTBUTTON, point.x, point.y, 0, hwnd, NULL)