分享

WM_NCHITTEST消息说明

 我的读本 2010-09-07
  WM_NCHITTEST消息说明 收藏
当光标移动到窗体,或鼠标按下,释放时,发送WM_NCHITTEST消息,如何鼠标不被捕获,消息在窗体得到光标之后发出,否则,消息发送到捕获到鼠标的窗体。
WM_NCHITTEST xPos = LOWORD(lParam); // 光标的水平位置(X)yPos = HIWORD(lParam); //光标的垂直位置(Y)
Parameters(参数)
xPos
lParam的低次序数值(X的数值)。指定鼠标指针的X坐标,这个坐标是相对于屏幕左上部进行比效的。
 
yPos
lParam的高次序数值(Y的数值)。指定鼠标指针的Y坐标,这个坐标是相对于屏幕左上部进行比效的。
 
Return Values(返回值)
返回的值是由DefWindowProc函数所提供的下列数值之一,指出紧跟着光标的位置.
值 活动的位置
HTBORDER 在一个可以用鼠标自由调整大小的(有边框)的窗上边界时
 
HTBOTTOM 在一个可调窗体大小的下边界水平位置时(使用者可以点下鼠标垂直的调正大小)
 
HTBOTTOMLEFT 在一个可调窗体边界的左下角位置时(使用者可以点下鼠标对角的
调窗体大小,从左下向右上调)
 
HTBOTTOMRIGHT 在一个可调窗体边界的右下角位置时(使用者可以点鼠标对角的调
窗体大小,从右下向左上)
 
HTCAPTION 在一个标题栏中
 
HTCLIENT 在窗体客户区
 
HTCLOSE 在关闭按钮(窗体)
 
HTERROR 在屏幕的后面或在窗体之间的线上(相当于HTNOWHERE,除了
DefWindowProc函数产生的系统发出”嘟”的错误”)
 
HTGROWBOX 我的理解:在窗体里(相同于HTSIZE)(原文:In a size box (same as
HTSIZE))
 
HTHELP 在帮助按钮上
 
HTHSCROLL 在水平滚动条中
 
HTLEFT 在窗体的左边界上(使用者可以点击鼠标左右(水平)调窗
体的大小)
 
HTMENU 在一个菜单上
 
HTMAXBUTTON 在最大化按钮上
 
HTMINBUTTON 在最小化按钮上
 
HTNOWHERE 在屏幕的后面或在窗体之间的线上(我的理解:两个窗体,一个前,一个
后,点后面的窗体产生)
 
HTREDUCE 在一个最小化的按钮上(原文:In a Minimize button)
 
HTRIGHT 在窗体的右边界(使用者能点鼠标水平调正窗体大小)
 
HTSIZE 原文: In a size box (same as HTGROWBOX 同样的HTGROWBOX)
 
HTSYSMENU 在一个系统菜单上,或在一个child(子窗体)的一个关闭按钮上
 
HTTOP 在一个窗体上部的边界位置上
 
HTTOPLEFT 在一个窗体上部的边界的左上角
 
HTTOPRIGHT 在一个窗体上部的边界的右上角
 
HTTRANSPARENT 在同一程序的两个窗体,一个窗体被另一个窗体覆盖着(消息
会传递到下面的窗体,至到其中的一个窗体离开啦,否则就发送
HTTRANSPARENT消息)
 
HTVSCROLL 在垂直滚动条上
 
HTZOOM 在一个最大化按钮上(In a Maximize button)
 
Remarks(评论)
用一个MAKEPOINTS的宏将lParam

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhuzhubin/archive/2009/07/17/4356825.aspx

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多