The SetScrollInfo function sets the parameters of a scroll bar, including the minimum and maximum scrolling positions, the page size, and the position of the scroll box (thumb). The function also redraws the scroll bar, if requested.
int SetScrollInfo(
HWND hwnd, |
// handle of window with scroll bar |
int fnBar, |
// scroll bar flag |
LPSCROLLINFO lpsi, |
// pointer to structure with scroll parameters |
BOOL fRedraw |
// redraw flag |
); |
Value |
Meaning |
SB_CTL |
Sets the parameters of a scroll bar control. The hwnd parameter must be the handle of the scroll bar control. |
SB_HORZ |
Sets the parameters of the given window's standard horizontal scroll bar. |
SB_VERT |
Sets the parameters of the given window's standard vertical scroll bar. |
The fMask member can be a combination of the following values:
Value |
Meaning |
SIF_DISABLENOSCROLL |
Disables the scroll bar instead of removing it, if the scroll bar’s new parameters make the scroll bar unnecessary. |
SIF_PAGE |
Sets the scroll page to the value specified in the nPage member of the SCROLLINFO structure pointed to by lpsi. |
SIF_POS |
Sets the scroll position to the value specified in the nPos member of the SCROLLINFO structure pointed to by lpsi. |
SIF_RANGE |
Sets the scroll range to the value specified in the nMin and nMax members of the SCROLLINFO structure pointed to by lpsi. |
The return value is the current position of the scroll box.
The SetScrollInfo function performs range checking on the values specified by the nPage and nPos members of the SCROLLINFO structure. The nPage member must specify a value from 0 to nMax - nMin +1. The nPos member must specify a value between nMin and nMax - max(nPage - 1, 0). If either value is beyond its range, the function sets it to a value that is just within the range.