SetScrollRange
The SetScrollRange
function sets the minimum and maximum position values for the specified scroll
bar. It can also be used to hide or show a standard scroll bar.The SetScrollRange
function is provided for compatibility with Windows 3.x. Win32-based
applications should use the SetScrollInfo
BOOL SetScrollRange(
HWND hWnd, |
// handle of window
with scroll bar |
int nBar, |
// scroll bar flag |
int nMinPos, |
// minimum
scrolling position |
int nMaxPos, |
// maximum
scrolling position |
BOOL bRedraw |
// redraw flag |
); |
|
Parameters
hWnd
Identifies a
scroll bar control or a window with a standard scroll bar, depending on the
value of the nBar parameter.
nBar
Specifies the
scroll bar to be set. This parameter can be one of the following values:
Value |
Meaning |
SB_CTL |
Sets the
range of a scroll bar control. The hWnd parameter must be the handle
of the scroll bar control. |
SB_HORZ |
Sets the
range of a window s standard horizontal scroll bar. |
SB_VERT |
Sets the
range of a window s standard vertical scroll bar. |
nMinPos
Specifies the
minimum scrolling position.
nMaxPos
Specifies the
maximum scrolling position.
bRedraw
Specifies
whether the scroll bar should be redrawn to reflect the change. If this parameter
is TRUE, the scroll bar is redrawn. If it is FALSE, the scroll bar is not
redrawn.
Return Values
If the
function succeeds, the return value is nonzero.
If the
function fails, the return value is zero. To get extended error information,
call GetLastError
Remarks
An
application should not call the SetScrollRange function to hide a scroll
bar while processing a scroll bar message.
If the call
to SetScrollRange immediately follows a call to the SetScrollPos
The default
range for a standard scroll bar is 0 through 100. The default range for a
scroll bar control is empty (both the nMinPos and nMaxPos
parameter values are zero). The difference between the values specified by the nMinPos
and nMaxPos parameters must not be greater than the value of MAXLONG.
Because the
messages that indicate scroll bar position, WM_HSCROLL and WM_VSCROLL, are
limited to 16 bits of position data, applications that rely solely on those
messages for position data have a practical maximum value of 65,535 for the SetScrollRange
function s nMaxPos parameter.
However,
because the SetScrollPos, SetScrollRange, GetScrollPos,
and GetScrollRange functions support 32-bit scroll bar position data,
there is a way to circumvent the 16-bit barrier of the WM_HSCROLL and
WM_VSCROLL messages. See GetScrollPos for a description of the technique
and its limits.
See Also