用SPY++看了看,似乎第一个NCRBUTTONDOWN消息,wParam是HTCAPTION。
下一个消息是普通的NCRBUTTONUP消息。
我将这两个消息模拟发送后不会弹出系统菜单。是不是我思路就错了?

解决方案 »

  1.   

    这两个消息是你在标题栏点击鼠标时向窗口发送的消息,窗口并不是处理这两个消息然后弹出对话框的。你要主动弹出系统菜单,那也很简单;CMenu* pSysMenu = GetSystemMenu(FALSE);
    pSysMenu->TrackPopupMenu(....);
      

  2.   

    SDK提供了弹出菜单的API:
    HMENU hmenu = ::GetSystemMenu(m_hWnd, FALSE);
    ::TrackPopupMenu(hmenu,TPM_CENTERALIGN ,0,0,FALSE,m_hWnd,NULL);
      

  3.   

    可以试一下发送WM_NCRBUTTONUP消息,然后传送HTCAPTION