GetScrollPos

【勇芳软件工作室】汉化HomePreviousNext

GetScrollPos功能在指定的滚动条中检索滚动框(thumb)的当前位置。当前位置是一个取决于当前滚动范围的相对值。例如,如果滚动范围为0到100,滚动条位于条的中间,则当前位置为50。

int GetScrollPos(

HWND 【的hWnd】,//用滚动条来处理窗口
INT 【NBAR】//滚动条标志
); 

参数

【的hWnd】

根据【NBAR】参数的值,标识滚动条控件或带有标准滚动条的窗口。

【NBAR】

指定要检查的滚动条。此参数可以是以下值之一:

含义
SB_CTL在滚动条控件中检索滚动框的位置。【的hWnd】参数必须是滚动条控件的句柄。
SB_HORZ在窗口的标准水平滚动条中检索滚动框的位置。
SB_VERT在窗口的标准垂直滚动条中检索滚动框的位置。

返回值

如果函数成功,则返回值是滚动框/

如果函数失败,返回值为零。要获取扩展错误信息,请调用GetLastError.

备注

GetScrollPos功能使应用程序能够使用32位滚动位置。虽然指示滚动条位置的消息WM_HSCROLL和WM_VSCROLL被限制为16位的位置数据,但功能SetScrollPos SetScrollRangeGetScrollPosGetScrollRange支持32位滚动条位置数据。因此,应用程序可以在处理WM_HSCROLLWM_VSCROLL消息时调用GetScrollPos来获取32位滚动条位置数据。

对这种技术的限制适用于窗口内容的实时滚动。应用程序通过处理携带SB_THUMBTRACK通知消息的WM_HSCROLL或WM_VSCROLL消息实现这种滚动,从而在用户移动滚动框的同时也称为拇指的位置进行跟踪。不幸的是,在用户移动时,没有任何功能来检索拇指的32位位置。GetScrollPos仅提供静态位置数据;因此,应用程序只能在滚动发生之前或之后获取32位位置数据。

也可以看看

GetScrollRange, ScrollDC, ScrollWindow, SetScrollPos, SetScrollRange, WM_HSCROLL, WM_VSCROLL