Scrolling the Client Area
The simplest way to scroll the content of a client area is to erase and then
redraw it. This is the method an application is likely to use with SB_PAGEUP,
SB_PAGEDOWN, and SB_TOP notification messages, which typically require completely
new content.
For some notification messages, such as SB_LINEUP and SB_LINEDOWN, not all the
content need be erased, because some remains visible after scrolling occurs.
The
ScrollWindowEx function preserves a portion of the client area's content, move the preserved
portion a specified amount, and then prepares the rest of the client area for
painting new information.
ScrollWindowEx uses the
BitBlt function to move a specific part of the data object to a new location within
the client area. Any uncovered part of the client area (anything not preserved)
is invalidated, erased, and painted when the next
WM_PAINT message occurs.
The
ScrollWindowEx function can be used to exclude a portion of the client area from the
scrolling operation. This keeps items with fixed positions, such as child windows,
from moving within the client area. It automatically invalidates the portion of
the client area that is to receive the new information, so the application does
not have to compute its own clipping regions. For more information on clipping,
see
Clipping.
Usually an application scrolls the content of a window in the direction
opposite that indicated by the scroll bar. For example, when the user clicks the
shaft in the area below the scroll box, an application scrolls the object in the
window upward to reveal a portion of the object that is below the visible
portion.
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database