导航:  Windows Controls Wrapper Functions > Scroll Bar Control > Functions >

SetScrollPos

上一页返回章节概述下一页

描述

 

SetScrollPos功能将滚动条(拇指)的位置设置在指定的滚动条中,如果需要,重新绘制滚动条,以反映滚动条的新位置。

 

Note SetScrollPos功能用于向后兼容。

 

C/C++ 语法

 

int SetScrollPos(

HWND hwnd,

int nBar,

int nPos,

BOOL bRedraw

);

 

PB语法

 

FUNCTION SetScrollPos ( _

BYVAL hwnd AS DWORD, _

BYVAL nBar AS LONG, _

BYVAL nPos AS LONG, _

BYVAL bRedraw AS LONG _

) AS LONG

 

参数

 

hwnd

[in]根据nBar参数的值,处理滚动条控件或带有标准滚动条的窗口。

nBar

[in]指定要设置的滚动条。

 

SB_CTL

在滚动条控件中设置滚动框的位置。

SB_HORZ

在窗口的标准水平滚动条中设置滚动框的位置。

SB_VERT

在窗口的标准垂直滚动条中设置滚动框的位置。

nPos

[in]指定滚动框的新位置。

bRedraw

[in]指定是否重新绘制滚动条以反映新的滚动框位置。

 

返回值

 

如果函数成功,则返回值是滚动框的上一个位置。

 

Windows XP:如果桌面是主题,父窗口是仅消息窗口,则该函数返回不正确的值。

 

如果函数失败,返回值为零。

 

备注

 

如果随后调用另一个函数重新绘制滚动条,则将bRedraw参数设置为FALSE是有用的。

 

因为指示滚动条位置的消息WM_HSCROLLWM_VSCROLL被限制为16位的位置数据,所以仅依赖这些位置数据的消息的应用程序的SetScrollPos函数的nPos的实际最大值为65,535

 

但是,由于SetScrollInfoSetScrollPosSetScrollRangeGetScrollInfoGetScrollPosGetScrollRange功能支持32位滚动条位置数据,因此有一种方法来规避16位屏障

 

如果nBar参数是SB_CTL,并且由hWnd参数指定的窗口不是系统滚动条控件,系统将向窗口发送SBM_SETPOS消息以设置滚动条信息。

 

最低操作系统

 

Windows 95,Windows NT 3.51。

 

引用文件 #INCLUDE Once

 

WinUser.inc