Het clientgebied scrollen

De eenvoudigste manier om te scrollen de inhoud van een gebied is te wissen en het vervolgens opnieuw te tekenen. Dit is de methode die een toepassing waarschijnlijk is te gebruiken met SB_PAGEUP, SB_PAGEDOWN en SB_TOP meldingen, waarvoor meestal volledig nieuwe inhoud.

Voor sommige meldingen, zoals SB_LINEUP en SB_LINEDOWN, moet niet alle inhoud worden gewist, omdat sommige zichtbaar blijft nadat scrollen optreedt. De ScrollWindowEx functie behoudt een gedeelte van het clientgebied van inhoud, het bewaarde gedeelte een opgegeven hoeveelheid verplaatst, en vervolgens de rest van het clientgebied bereidt voor schilderij nieuwe informatie. ScrollWindowEx maakt gebruik van de BitBlt functie om een specifiek deel van het gegevensobject naar een nieuwe locatie in het clientgebied. Een ongedekte deel van het clientgebied (iets niet bewaard) is ongeldig, gewist, en geschilderd wanneer de volgende WM_PAINT wordt weergegeven.

De ScrollWindowEx functie kan worden gebruikt om uitsluiten van een gedeelte van het clientgebied van het scrollen operatie. Onderdelen met vaste posities, zoals kind windows, weerhoudt dit zich binnen het clientgebied verplaatsen. Het gedeelte van het gebied dat is de informatie te ontvangen nieuwe, zodat de toepassing hoeft niet te berekenen zijn eigen regio's knippen, wordt het automatisch ongeldig. Zie voor meer informatie over knippen, Clipping.

Meestal een toepassing de inhoud van een venster in de tegenovergestelde richting die aangegeven wordt geschoven door de schuifbalk. Bijvoorbeeld, wanneer de gebruiker op de schacht in het gebied onder het schuifblokje klikt, schuift een toepassing het object in het venster omhoog te onthullen een gedeelte van het object die lager is dan het zichtbare gedeelte.

U kunt ook een rechthoekig gebied met de ScrollDC functie schuiven.