int ScrollWindowEx ( Int Dx, Int dy, LPCRECT LpRectScroll, LPCRECT LpRectClip, CRgn * PrgnUpdate, LPRECT LpRectUpdate, UINT Flags );
Rückgabewert
Der Rückgabewert ist SIMPLEREGION (rechteckige ungültig Region), COMPLEXREGION (nicht rechteckige Region ungültig; überlappende Rechtecke) oder NULLREGION (keine Region für ungültig erklärt), ist die Funktion erfolgreich; Andernfalls ist der Rückgabewert Fehler.
Parameter
dx
Gibt die Höhe in Geräteeinheiten, horizontale Bildläufe. Dieser Parameter muss einen negativen Wert nach links scrollen.
dy
Gibt die Höhe in Geräteeinheiten, vertikale Bildläufe. Dieser Parameter muss einen negativen Wert oben scrollen.
lpRectScroll
Verweist auf eine RECT -Struktur, die den Teil des Clientbereichs gescrollt werden angibt. Wenn dieser Parameter NULList, wird der gesamte Clientbereich gerollt.
lpRectClip
Verweist auf eine RECT -Struktur, die das Clippingrechteck Bildlauf angibt. Diese Struktur hat Vorrang vor dem Rechteck, das auf LpRectScrollverweist. Nur Bits innerhalb dieses Rechtecks werden gescrollt. Bits außerhalb dieses Rechteck sind nicht betroffen, auch wenn sie in das LpRectScroll -Rechteck. Wenn dieser Parameter NULList, wird nicht auf die Scroll-Rechteck durchgeführt.
prgnUpdate
Bezeichnet die Region, die geändert wird, um die Region ungültig durch Scrollen zu halten. Dieser Parameter kann NULL sein.
lpRectUpdate
Verweist auf eine RECT -Struktur, die die Grenzen des Rechtecks ungültig durch Scrollen erhalten. Dieser Parameter kann NULL sein.
flaggen
Kann eine der folgenden Werte haben:
Bemerkungen
Führt einen Bildlauf des Clientbereichs eines Fensters. Diese Funktion ist ähnlich der ScrollWindow Funktion, mit einigen zusätzlichen Features.
If SW_INVALIDATE and SW_ERASE are not specified, the ScrollWindowEx member function does not invalidate the area that is scrolled away from. If either of these flags is set, ScrollWindowEx invalidates this area. The area is not updated until the application calls the UpdateWindow member function, calls the RedrawWindow member function (specifying RDW_UPDATENOW or RDW_ERASENOW), or retrieves the WM_PAINT message from the application queue.
Wenn das Fenster hat die WS_CLIPCHILDREN -Formatvorlage, die zurückgegebenen Bereiche durch PrgnUpdate und LpRectUpdate angegeben repräsentieren die gesamte Fläche des Fensters ein Bildlauf ausgeführt, die aktualisiert werden muss, einschließlich der Bereiche in untergeordneten Fenstern, die aktualisiert werden müssen.
Wenn die SW_SCROLLCHILDREN -Flag angegeben ist, Windows wird nicht richtig aktualisiert den Bildschirm, wenn Teil eines untergeordneten Fensters ein Bildlauf durchgeführt wird. Der Teil des Fensters gescrollt Kind, das außerhalb des Quellrechtecks liegt nicht gelöscht werden und wird nicht ordnungsgemäß in neu gezeichnet sein neues Ziel. Verwendung der DeferWindowPos -Funktion von Windows zu verschieben untergeordneten Fenstern, die nicht vollständig innerhalb des LpRectScroll Rechtecks liegen. Der Cursor positioniert ist, wenn das SW_SCROLLCHILDREN -Flag festgelegt ist, und das Einfügemarke Rechteck das Scroll-Rechteck schneidet.
Alle Eingabe- und Koordinaten (für LpRectScroll, LpRectClip, LpRectUpdateund PrgnUpdate) werden als angenommen in Clientkoordinaten, unabhängig davon, ob das Fenster der CS_OWNDC oder CS_CLASSDC -Klasse-Stil hat. Verwendung der LPtoDP und DPtoLP Windows-Funktionen zum Konvertieren in und aus logischen Koordinaten, wenn notwendig.
CWnd Übersicht |nbsp; Member der Klasse | Hierarchiediagramm
Siehe auch&Nbsp;CWnd::RedrawWindow, CDC::ScrollDC, CWnd::ScrollWindow, CWnd::UpdateWindow, :: DeferWindowPos, :: ScrollWindowEx