点按动作是WinCE里面取代右键的动作。 SHRecognizeGesture API是用来判断是否有点按消息的。在直接模式,如果有点按消息,则返回GN_CONTEXTMENU,否则返回0 。对通知模式,则发送WM_NOTIFY 消息携带GN_CONTEXTMENU 到父窗口
1.#include "aygshell.h"
2.如果是CWnd窗口接受消息,由于MFC的错误,应该如下处理:
void CXxWnd::OnLButtonDown(UINT nFlags, CPoint point)
{
SHRGINFO shrgi = {0};
shrgi.cbSize = sizeof(SHRGINFO);
shrgi.hwndClient = m_hWnd;
shrgi.ptDown.x = point.x;
shrgi.ptDown.y = point.y;
shrgi.dwFlags = SHRG_RETURNCMD;
if(GN_CONTEXTMENU == ::SHRecognizeGesture(&shrgi))
....//右键消息的响应函数
else
Default();
}