Scroll Bar
This section contains information about the programming elements used with scroll bars. A window can display a data object, such as a document or a bitmap, that is larger than the window's client area. When provided with a scroll bar, the user can scroll a data object in the client area to bring into view the portions of the object that extend beyond the borders of the window.
Overviews
Topic | Contents |
---|---|
About Scroll Bars | A scroll bar consists of a shaded shaft with an arrow button at each end and a scroll box (sometimes called a thumb) between the arrow buttons. |
Using Scroll Bars | When creating an overlapped, pop-up, or child window, you can add standard scroll bars by using the CreateWindowEx function and specifying WS_HSCROLL, WS_VSCROLL, or both styles. |
Functions
Topic | Contents |
---|---|
EnableScrollBar | The EnableScrollBar function enables or disables one or both scroll bar arrows. |
GetScrollBarInfo | The GetScrollBarInfo function retrieves information about the specified scroll bar. |
GetScrollInfo | The GetScrollInfo function retrieves the parameters of a scroll bar, including the minimum and maximum scrolling positions, the page size, and the position of the scroll box (thumb). |
GetScrollPos | The GetScrollPos function retrieves the current position of the scroll box (thumb) in the specified scroll bar. The current position is a relative value that depends on the current scrolling range. For example, if the scrolling range is 0 through 100 and the scroll box is in the middle of the bar, the current position is 50. Note: The GetScrollPos function is provided for backward compatibility. New applications should use the GetScrollInfo function. |
GetScrollRange | The GetScrollRange function retrieves the current minimum and maximum scroll box (thumb) positions for the specified scroll bar. Note: The GetScrollRange function is provided for compatibility only. New applications should use the GetScrollInfo function. |
ScrollDC | The ScrollDC function scrolls a rectangle of bits horizontally and vertically. |
ScrollWindow | The ScrollWindow function scrolls the contents of the specified window's client area. Note: The ScrollWindow function is provided for backward compatibility. New applications should use the ScrollWindowEx function. |
ScrollWindowEx | The ScrollWindowEx function scrolls the contents of the specified window's client area. |
SetScrollInfo | 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. |
SetScrollPos | The SetScrollPos function sets the position of the scroll box (thumb) in the specified scroll bar and, if requested, redraws the scroll bar to reflect the new position of the scroll box. Note: The SetScrollPos function is provided for backward compatibility. New applications should use the SetScrollInfo function. |
SetScrollRange | The SetScrollRange function sets the minimum and maximum scroll box positions for the specified scroll bar. Note: The SetScrollRange function is provided for backward compatibility. New applications should use the SetScrollInfo function. |
ShowScrollBar | The ShowScrollBar function shows or hides the specified scroll bar. |
Messages
Topic | Contents |
---|---|
SBM_ENABLE_ARROWS | An application sends the SBM_ENABLE_ARROWS message to enable or disable one or both arrows of a scroll bar control. |
SBM_GETPOS | The SBM_GETPOS message is sent to retrieve the current position of the scroll box of a scroll bar control. The current position is a relative value that depends on the current scrolling range. For example, if the scrolling range is 0 through 100 and the scroll box is in the middle of the bar, the current position is 50. Applications should not send this message directly. Instead, they should use the GetScrollPos function. A window receives this message through its WindowProc function. Applications which implement a custom scroll bar control must respond to these messages for the GetScrollPos function to function properly. |
SBM_GETRANGE | The SBM_GETRANGE message is sent to retrieve the minimum and maximum position values for the scroll bar control. Applications should not send this message directly. Instead, they should use the GetScrollRange function. A window receives this message through its WindowProc function. Applications which implement a custom scroll bar control must respond to these messages for the GetScrollRange function to work properly. |
SBM_GETSCROLLBARINFO | Sent by an application to retrieve information about the specified scroll bar. |
SBM_GETSCROLLINFO | The SBM_GETSCROLLINFO message is sent to retrieve the parameters of a scroll bar. Applications should not send this message directly. Instead, they should use the GetScrollInfo function. A window receives this message through its WindowProc function. Applications which implement a custom scroll bar control must respond to these messages for the GetScrollInfo function to work properly. |
SBM_SETPOS | The SBM_SETPOS message is sent to set the position of the scroll box (thumb) and, if requested, redraw the scroll bar to reflect the new position of the scroll box. Applications should not send this message directly. Instead, they should use the SetScrollPos function. A window receives this message through its WindowProc function. Applications which implement a custom scroll bar control must respond to these messages for the SetScrollPos function to work properly. |
SBM_SETRANGE | The SBM_SETRANGE message is sent to set the minimum and maximum position values for the scroll bar control. Applications should not send this message directly. Instead, they should use the SetScrollRange function. A window receives this message through its WindowProc function. Applications which implement a custom scroll bar control must respond to these messages for the SetScrollRange function to work properly. |
SBM_SETRANGEREDRAW | An application sends the SBM_SETRANGEREDRAW message to a scroll bar control to set the minimum and maximum position values and to redraw the control. |
SBM_SETSCROLLINFO | The SBM_SETSCROLLINFO message is sent to set the parameters of a scroll bar. Applications should not send this message directly. Instead, they should use the SetScrollInfo function. A window receives this message through its WindowProc function. Applications which implement a custom scroll bar control must respond to these messages for the SetScrollInfo function to function properly. |
Notifications
Topic | Contents |
---|---|
WM_CTLCOLORSCROLLBAR | The WM_CTLCOLORSCROLLBAR message is sent to the parent window of a scroll bar control when the control is about to be drawn. By responding to this message, the parent window can use the display context handle to set the background color of the scroll bar control. A window receives this message through its WindowProc function. |
WM_HSCROLL | The WM_HSCROLL message is sent to a window when a scroll event occurs in the window's standard horizontal scroll bar. This message is also sent to the owner of a horizontal scroll bar control when a scroll event occurs in the control. A window receives this message through its WindowProc function. |
WM_VSCROLL | The WM_VSCROLL message is sent to a window when a scroll event occurs in the window's standard vertical scroll bar. This message is also sent to the owner of a vertical scroll bar control when a scroll event occurs in the control. A window receives this message through its WindowProc function. |
Structures
Topic | Contents |
---|---|
SCROLLBARINFO | The SCROLLBARINFO structure contains scroll bar information. |
SCROLLINFO | The SCROLLINFO structure contains scroll bar parameters to be set by the SetScrollInfo function (or SBM_SETSCROLLINFO message), or retrieved by the GetScrollInfo function (or SBM_GETSCROLLINFO message). |
Constants
Topic | Contents |
---|---|
Scroll Bar Control Styles | To create a scroll bar control using the CreateWindow or CreateWindowEx function specify the SCROLLBAR class, appropriate window style constants, and a combination of the following scroll bar control styles. Some of the styles create a scroll bar control that uses a default width or height. However, you must always specify the x- and y-coordinates and the other dimensions of the scroll bar when you call CreateWindow or CreateWindowEx. |