Freigeben über


Standardnachrichtenverarbeitung List-View

In diesem Abschnitt wird die Von einem Listenansichtssteuerelement ausgeführte Fensternachrichtenverarbeitung aufgeführt.

Nachrichtenverarbeitung

In der folgenden Tabelle wird die Fensternachrichtenverarbeitung beschrieben, die von einem Listenansichtssteuerelement ausgeführt wird.

Nachricht Ausgeführte Verarbeitung
WM_CHAR Sucht nach einem Listenansichtselement, das mit dem angegebenen Zeichen beginnt. Wenn das Element gefunden wird, wird der Fokus auf das Element ausgewählt und festgelegt. Mehrere Zeichen, die innerhalb eines Timeoutintervalls empfangen werden, das derzeit mit einer Sekunde festgelegt ist, werden verkettet, und das Listenansicht-Steuerelement sucht nach einem Element, das mit der resultierenden Zeichenfolge beginnt.
WM_COMMAND Verarbeitet die EN_UPDATE und EN_KILLFOCUS Benachrichtigungscodes und leitet alle anderen Bearbeitungssteuerelementbenachrichtigungen an das übergeordnete Fenster weiter.
WM_CREATE Führt die Initialisierung zusätzlich zu WM_NCCREATEdurch. Wenn die LVS_SHAREIMAGELISTS Fensterformatvorlage nicht angegeben ist, erstellt das Listenansicht-Steuerelement an diesem Punkt das Symbol und kleine Symbolbildlisten.
WM_DESTROY Gibt Ressourcen frei, die während WM_CREATEzugeordnet sind.
WM_ERASEBKGND Löscht den Fensterhintergrund mithilfe der aktuellen Hintergrundfarbe für das Listenansicht-Steuerelement. Wenn die Hintergrundfarbe der CLR_NONE Wert ist, leitet das Listenansicht-Steuerelement die Nachricht an das übergeordnete Fenster weiter.
WM_GETDLGCODE Gibt eine Kombination der werte DLGC_WANTTAB und DLGC_WANTARROWS zurück.
WM_GETFONT Gibt das Handle an die aktuelle Bezeichnungsschriftart zurück.
WM_HSCROLL Scrollt das Listenansichtssteuerelement horizontal.
WM_KEYDOWN Verarbeitet die LEERTASTE, DIE EINGABETASTE und die Pfeiltasten und sendet einen LVN_KEYDOWN Benachrichtigungscode an das übergeordnete Fenster.
WM_KILLFOCUS Überschreibt das element mit Relevanz, falls vorhanden, und sendet einen NM_KILLFOCUS Benachrichtigungscode an das übergeordnete Fenster.
WM_LBUTTONDBLCLK Sendet das übergeordnete Fenster NM_DBLCLK (Listenansicht) Benachrichtigungscode.
WM_LBUTTONDOWN Verarbeitet auf unterschiedliche Weise, je nachdem, ob ein Klick- oder Ziehvorgang initiiert wird. Um zu bestimmen, welcher Vorgang beteiligt ist, wechselt das Listenansicht-Steuerelement in eine modale Meldungsschleife, bis die Schaltfläche losgelassen wird oder die Maus verschoben wird. Im Falle eines Klicks kann das Listenansicht-Steuerelement ändern, welches Element den Fokus hat und welche Elemente ausgewählt sind, wobei die Cursorposition, der Zustand der UMSCHALT- und STRG-TASTE usw. berücksichtigt wird. Anschließend sendet das Listenansicht-Steuerelement das übergeordnete Fenster an eine NM_CLICK (Listenansicht) Benachrichtigungscode.
Wenn das Ziehen über ein Element beginnt, wählt das Listenansicht-Steuerelement den Fokus auf das Element aus und legt ihn fest. Anschließend wird ein LVN_BEGINDRAG Benachrichtigungscode an das übergeordnete Fenster gesendet. Das übergeordnete Fenster ist dafür verantwortlich, den Ziehvorgang tatsächlich auszuführen.
Wenn das Ziehen über den Fensterhintergrund beginnt, wechselt das Listenansicht-Steuerelement in eine andere modale Meldungsschleife, sodass der Benutzer ein Rechteck erstellen kann, indem er die Maus zieht. Elemente innerhalb des Rechtecks werden ausgewählt.
WM_NCCREATE Weist eine interne Datenstruktur zu und initialisiert sie und ruft dann die DefWindowProc--Funktion auf.
WM_NCDESTROY Gibt Ressourcen frei, die vom Listenansichtssteuerelement zugeordnet sind. Sofern die LVS_SHAREIMAGELISTS Formatvorlage nicht verwendet wird, schließt dies das Löschen der Listen mit voller Größe und kleinen Bildern ein.
WM_NOTIFY Verarbeitet Headersteuerelement-Benachrichtigungscodes.
WM_PAINT Zeigt alle Elemente im Aktualisierungsbereich an. Bei Rückrufelementen sendet das Steuerelement zunächst einen LVN_GETDISPINFO Benachrichtigungscode an das Besitzerfenster, um Anzeigeinformationen anzufordern. Wenn der wParam--Parameter ungleich NULL ist, geht das Steuerelement davon aus, dass der Wert ein HDC ist und mit diesem Gerätekontext farben wird.
WM_RBUTTONDOWN Verarbeitet auf die gleiche Weise wie die WM_LBUTTONDOWN Nachricht, außer dass das Steuerelement einen NM_RCLICK (Listenansicht) Benachrichtigungscode (anstelle von NM_CLICK (Listenansicht)) und einen LVN_BEGINRDRAG Benachrichtigungscode (anstelle von LVN_BEGINDRAG) sendet). Beachten Sie, dass das Steuerelement die entsprechende WM_RBUTTONUP Nachricht verarbeitet und nicht verteilt. Anwendungen können diese Meldung daher nicht sehen, auch wenn sie das Steuerelement unterklassigen.
WM_SETFOCUS Überschreibt das element mit Relevanz, falls vorhanden, und sendet einen NM_SETFOCUS Benachrichtigungscode an das übergeordnete Fenster.
WM_SETFONT Speichert den angegebenen Schriftpunkt, leitet die Nachricht ggf. an das Kopfzeilenfenster weiter und überschreibt die neue Schriftart erneut.
WM_SETREDRAW Aktiviert oder deaktiviert die Neuauszeichnung.
WM_TIMER Beginnt mit der Bearbeitung einer Elementbezeichnung. Wenn der Benutzer auf die Beschriftung des fokussierten Elements klickt, legt das Listenansicht-Steuerelement einen Timer fest, anstatt sofort in den Bearbeitungsmodus zu wechseln. Der Timer ermöglicht es, dass das Listenansicht-Steuerelement nicht Bearbeitungsmodus eingeben, wenn der Benutzer auf die Beschriftung doppelkligt.
WM_VSCROLL Scrollt das Listenansicht-Steuerelement vertikal.
WM_WINDOWPOSCHANGED Aktualisiert die Fensterlaufleisten. Wenn es sich bei der aktuellen Ansicht um eine Symbol- oder kleine Symbolansicht handelt und die LVS_AUTOARRANGE Formatvorlage angegeben ist, ordnet das Listenansichtssteuerelement auch die Listenelemente an.
WM_WININICHANGE Verarbeitet Änderungen an Systemmetriken.