ScrollWindow-Funktion (winuser.h)
Die ScrollWindow-Funktion scrollt den Inhalt des Clientbereichs des angegebenen Fensters.
Syntax
BOOL ScrollWindow(
[in] HWND hWnd,
[in] int XAmount,
[in] int YAmount,
[in] const RECT *lpRect,
[in] const RECT *lpClipRect
);
Parameter
[in] hWnd
Typ: HWND
Handle mit dem Fenster, in dem der Clientbereich scrollen soll.
[in] XAmount
Typ: int
Gibt die Menge des horizontalen Bildlaufs in Geräteeinheiten an. Wenn das Fenster, das gescrollt wird, die CS_OWNDC - oder CS_CLASSDC-Format aufweist, verwendet dieser Parameter logische Einheiten anstelle von Geräteeinheiten. Dieser Parameter muss ein negativer Wert sein, um den Inhalt des Fensters nach links zu scrollen.
[in] YAmount
Typ: int
Gibt die Menge des vertikalen Bildlaufs in Geräteeinheiten an. Wenn das Fenster, das gescrollt wird, die CS_OWNDC - oder CS_CLASSDC-Format aufweist, verwendet dieser Parameter logische Einheiten anstelle von Geräteeinheiten. Dieser Parameter muss ein negativer Wert sein, um den Inhalt des Fensters nach oben zu scrollen.
[in] lpRect
Typ: const RECT*
Zeiger auf die RECT-Struktur , die den Teil des Clientbereichs angibt, der scrollen soll. Wenn dieser Parameter NULL ist, wird der gesamte Clientbereich gescrollt.
[in] lpClipRect
Typ: const RECT*
Zeiger auf die RECT-Struktur , die die Koordinaten des Abschneiderechtecks enthält. Nur Gerätebits innerhalb des Ausschneiderechtecks sind betroffen. Bits, die von der Außenseite des Rechtecks nach innen gescrollt werden, werden gezeichnet; Bits, die von der Innenseite des Rechtecks nach außen gescrollt werden, werden nicht gezeichnet.
Rückgabewert
Typ: BOOL
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Wenn sich das Caret im Fenster befindet, das scrollt, blendet ScrollWindow das Caret automatisch aus, um zu verhindern, dass es gelöscht wird, und stellt das Caret dann wieder her, nachdem der Bildlauf abgeschlossen ist. Die Caretposition wird entsprechend angepasst.
Der von ScrollWindow aufgedeckte Bereich wird nicht neu gestrichen, sondern im Updatebereich des Fensters kombiniert. Die Anwendung erhält schließlich eine WM_PAINT Meldung, die sie darüber informiert, dass die Region neu gestrichen werden muss. Um den unbedeckten Bereich zur gleichen Zeit neu zu streichen, während der Bildlauf in Aktion ist, rufen Sie sofort nach dem Aufrufen von ScrollWindow die UpdateWindow-Funktion auf.
Wenn der lpRect-ParameterNULL ist, werden die Positionen aller untergeordneten Fenster im Fenster um den durch die Parameter XAmount und YAmount angegebenen Betrag versetzt. Ungültige (unlackierte) Bereiche im Fenster werden ebenfalls offsett. ScrollWindow ist schneller, wenn lpRectNULL ist.
Wenn lpRect nicht NULL ist, werden die Positionen untergeordneter Fenster nicht geändert, und ungültige Bereiche im Fenster werden nicht offsett. Um Aktualisierungsprobleme zu verhindern, wenn lpRect nicht NULL ist, rufen Sie UpdateWindow auf, um das Fenster vor dem Aufrufen von ScrollWindow neu zu streichen.
Beispiele
Ein Beispiel finden Sie unter Scrolling Text mit der WM_PAINT Nachricht.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | winuser.h (einschließlich Windows.h) |
Bibliothek | User32.lib |
DLL | User32.dll |
APIs | ext-ms-win-ntuser-window-l1-1-4 (eingeführt in Windows 10, Version 10.0.14393) |
Weitere Informationen
Andere Ressourcen
Referenz