WM_RBUTTONUP消息收不到问题

浪子不回头ぞ 提交于 2019-12-02 01:54:35

           在Duilib中,当设置了Caption后,Duilib处理鼠标点击测试消息:WM_NCHITTEST

          

 

         如上,即当鼠标点击是Caption区域,如果不是Button或者RichEdit的话,会返回HTCAPTION,即告诉WINDOWS我是非客户端区。

         非客户端,用户可以用鼠标对窗口进行拖拽(相当于模拟了标题栏)。

         此时,当用户鼠标点击时,你就得不到常规的WM_LBUTTONXXX 与 WM_RBUTTONXXX了 

         相反,你会得到WM_NCLBUTTONXXX 与 WM_NCRBUTTONXXX    

         因此,如果你想通过鼠标右键产生菜单的话,可以同时处理

         case WM_RBUTTONUP:             //leave it down

         case WM_NCRBUTTONUP:

              CreateMenu();

        break;

 

       更多的关于WM_NCHITTEST,可参考这篇文章https://www.cnblogs.com/GnagWang/archive/2010/09/12/1824394.html

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!