WM_VSCROLL

更新时间:2022-07-02 06:21

WM_VSCROLL 定义在头文件Winuser.h中。定义为:#define WM_VSCROLL 0x0115.

定义

WM_VSCROLL 定义在头文件Winuser.h中。定义为:#define WM_VSCROLL 0x0115.

当窗口的标准垂直滚动条中有滚动的事件发生时,在我们的窗口应用程序的消息队列中将产生一条WM_VSCROLL消息。

WM_VSCROLL

WPARAM wParam;

LPARAM lParam;

参数解释

wParam

HIWORD指定LOWORD做为SB_THUMBPOSITION或SB_THUMBTRACK滚动框的当前位置,否则,这个词不使用。

LOWORD做为指定一个滚动条值,指出用户的滚动要求。这个参数可以是下列值之一。

SB_PAGEDOWN 向下滚动一页

SB_LINEDOWN 向下滚动一行

SB_PAGEUP 向上滚动一页

SB_LINEUP 向上滚动一行

SB_TOP 滚动到顶端

SB_BOTTOM 滚动到底部

SB_THUMBPOSITION 用户有拖动滚动框 (滑块),并释放鼠标按钮。HIWORD 指示在拖动操作结束时滚动框的位置。

SB_THUMBTRACK 用户正在拖动滚动框。直到用户释放鼠标按钮,反复发送此邮件。HIWORD 指示滚动框已被拖动到的位置。

lParam

如果lParam参数等于0,就说明它是窗口滚动条;如果等于滚动条窗口句柄,就说明它是滚动条控件。

函数

afx_msg void OnVScroll( UINT nSBCode, UINT nPos, CScrollBar* pScrollBar );

参数说明

nSBCode:显示用户的滚动请求,例如:

nPos:如果滚动条状态是SB_THUMBPOSITION 或者 SB_THUMBTRACK,指定当前的滚动框位置;否则不使用。根据初始化滚动条的范围,nPos可能是负方向的,如有必要转化成int.

pScrollBar:如果滚动信息来源于一个滚动条控制,包含一个指向控制的指针。如果用户点击了windows的滚动条按钮,这个参数为NULL。保留备用。

返回值

如果应用程序处理该消息,它应该返回零。

其他信息

SB_THUMBTRACK 请求代码通常使用的应用程序提供的反馈,因为用户拖动滚动框。

如果应用程序将滚动窗口的内容,它也必须复位使用 SetScrollPos 函数的滚动框的位置。

请注意 WM_VSCROLL 消息进行滚动框的位置数据的只有 16 位。因此,应用程序仅仅依靠 WM_VSCROLL (和 WM_HSCROLL) 为滚动位置数据的实际最大位置值为 65,535

但是,由于 SetScrollInfo、 SetScrollPos、 SetScrollRange、 GetScrollInfo、 GetScrollPos 和 GetScrollRange 函数支持 32 位滚动栏位置数据,是避开 16 位屏障的 WM_HSCROLL 和 WM_VSCROLL 的消息的方法。技术的说明,请参阅 GetScrollInfo。

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}