WM_NCHITTEST消息说明

简介: 文章来源:http://blog.csdn.net/yingzheng1983/article/details/3135858 WM_NCHITTEST 当光标移动到窗体,或鼠标按下,释放时,发送WM_NCHITTEST消息,如何鼠标不被捕获,消息在窗体得到光标之后发出,否则,消息发送到捕获到鼠标的窗体。

文章来源:http://blog.csdn.net/yingzheng1983/article/details/3135858

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转换成POINTS结构

持信息

Windows NT/2000/XP:Included in Windows NT 3.1 and later.

Windows 95/98/Me:Included in Windows 95 and later.

目录
相关文章
|
消息中间件 安全 API
C#实现操作Windows窗口句柄:SendMessage/PostMessage发送系统消息、事件和数据【窗口句柄总结之二】
SendMessage/PostMessage API 可以实现发送系统消息,这些消息可以定义为常见的鼠标或键盘事件、数据的发送等各种系统操作......
3901 1
C#实现操作Windows窗口句柄:SendMessage/PostMessage发送系统消息、事件和数据【窗口句柄总结之二】
|
11月前
|
消息中间件 Windows
Windows消息,消息循环的处理,消息队列,键盘消息,鼠标消息,定时器消息(四)
Windows消息,消息循环的处理,消息队列,键盘消息,鼠标消息,定时器消息
|
11月前
|
消息中间件 Windows
Windows消息,消息循环的处理,消息队列,键盘消息,鼠标消息,定时器消息(三)
Windows消息,消息循环的处理,消息队列,键盘消息,鼠标消息,定时器消息(三)
|
11月前
|
消息中间件 Windows
Windows消息,消息循环的处理,消息队列,键盘消息,鼠标消息,定时器消息(一)
Windows消息,消息循环的处理,消息队列,键盘消息,鼠标消息,定时器消息
|
11月前
|
消息中间件 Windows
Windows消息,消息循环的处理,消息队列,键盘消息,鼠标消息,定时器消息(二)
Windows消息,消息循环的处理,消息队列,键盘消息,鼠标消息,定时器消息
|
消息中间件 网络协议
RabbiMQ中的消息回调与消息确认
和生产者的消息确认机制不同,因为消息接收本来就是在监听消息,符合条件的消息就会消费下来。 所以,消息接收的确认机制主要存在三种模式 1.自动确认 这也是默认的消息确认情况。AcknowledgeMode.NONE,RabbitMQ成功将消息发出(即将消息成功写入TCP Socket)中立即 认为本次投递已经被正确处理,不管消费者端是否成功处理本次投递 当自动应答等于true的时候,表示当消费者一收到消息就表示消费者收到了消息,消费者收到了消息就会立即从队列中删除 2.不确认(不介绍) 3.手动确认(多数选择的模式) 消费者收
|
消息中间件 C++ UED
VC++ SendMessage和PostMessage使用总结
VC++ SendMessage和PostMessage使用总结
395 0
|
API C#
C#使用SendMessage发送组合键
有时需要出发菜单功能,例如发送ALT + F打开应用程序的文件菜单,如何使用SendMessage实现呢? 使用用spy++截取的ALT+F的消息内容(如何使用spy++,请熟悉的高手指点下,我使用spy++ lite没有得到): 000310DC P WM_SYSKEYDOWN nVirtKey:...
1069 0