Standardmäßige List-View Nachrichtenverarbeitung
In diesem Abschnitt wird die Fensternachrichtenverarbeitung aufgeführt, die von einem Listenansicht-Steuerelement ausgeführt wird.
Nachrichtenverarbeitung
In der folgenden Tabelle wird die Verarbeitung von Fensternachrichten beschrieben, die von einem Listenansicht-Steuerelement ausgeführt wird.
Message |
Verarbeitung ausgeführt |
|---|---|
| WM _ CHAR | Sucht nach einem Listenansichtselement, das mit dem angegebenen Zeichen beginnt, und wählt, wenn das Element gefunden wird, den Fokus auf das Element aus und legt ihn fest. Mehrere Zeichen, die innerhalb eines Time out-Intervalls empfangen wurden und derzeit auf eine Sekunde festgelegt sind, werden verkettet, und das Listenansichtssteuerelement sucht nach einem Element, das mit der resultierenden Zeichenfolge beginnt. |
| _WM-BEFEHL | Verarbeitet die Benachrichtigungscodes EN _ UPDATE und EN _ KILLFOCUS und gibt alle anderen Bearbeitungssteuerungsbenachrichtigungen an das übergeordnete Fenster weiter. |
| WM _ CREATE | Führt die Initialisierung zusätzlich zu WM _ NCCREATE aus. Wenn der LVS _ SHAREIMAGELISTS-Fensterstil nicht angegeben ist, erstellt das Listenansicht-Steuerelement das Symbol und kleine Symbolbildlisten. |
| WM _ DESTROY | Gibt ressourcen frei, die während der WM CREATE zugeordnet _ wurden. |
| WM _ ERASEBKGND | Löscht den Fensterhintergrund mithilfe der aktuellen Hintergrundfarbe für das Listenansicht-Steuerelement. Wenn die Hintergrundfarbe der CLR NONE-Wert ist, wird die Nachricht vom _ Listenansicht-Steuerelement an das übergeordnete Fenster weitergeleitet. |
| WM _ GETDLGCODE | Gibt eine Kombination der DLGC-Werte _ WANTTAB und DLGC _ WANTWS zurück. |
| WM _ GETFONT | Gibt das Handle an die aktuelle Bezeichnungsschriftart zurück. |
| WM _ HSCROLL | Führt einen horizontalen Bildlauf für das Listenansichtssteuerfeld durch. |
| WM _ KEYDOWN | Verarbeitet die TASTEN SPACEBAR, ENTER und Pfeil und sendet einen LVN _ KEYDOWN-Benachrichtigungscode an das übergeordnete Fenster. |
| WM _ KILLFOCUS | Neu gemalt das fokussierte Listenelement (sofern verfügbar) und sendet einen NM KILLFOCUS-Benachrichtigungscode _ an das übergeordnete Fenster. |
| WM _ LBUTTONDBLCLK | Sendet dem übergeordneten Fenster einen NM _ DBLCLK-Benachrichtigungscode (Listenansicht). |
| WM _ LBUTTONDOWN | Die Verarbeitung erfolgt auf unterschiedliche Weise, je nachdem, ob ein Klick- oder Ziehvorgang initiiert wird. Um zu bestimmen, welcher Vorgang beteiligt ist, geht das Listenansicht-Steuerelement in eine modale Meldungsschleife ein, bis die Schaltfläche losgelassen oder die Maus bewegt wird. Im Falle eines Klicks kann das Listenansicht-Steuerelement ändern, welches Element den Fokus besitzt und welche Elemente ausgewählt werden. Dabei werden die Cursorposition, der Status der UMSCHALT- und STRG-Tasten und so weiter berücksichtigt. Anschließend sendet das Listenansicht-Steuerelement dem übergeordneten Fenster einen NM _ CLICK-Benachrichtigungscode (Listenansicht). 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 übermittelt. Das übergeordnete Fenster ist dafür verantwortlich, den Ziehvorgang tatsächlich durchführen zu können. Wenn das Ziehen über den Fensterhintergrund beginnt, geht das Listenansicht-Steuerelement in eine andere modale Meldungsschleife, sodass der Benutzer durch Ziehen der Maus ein Rechteck bilden kann. Elemente innerhalb des Rechtecks werden ausgewählt. |
| WM _ NCCREATE | Ordnet eine interne Datenstruktur zu und initialisiert sie und ruft dann die DefWindowProc-Funktion auf. |
| WM _ NCDESTROY | Gibt vom Listenansicht-Steuerelement zugeordnete Ressourcen frei. Sofern nicht der LVS _ SHAREIMAGELISTS-Stil verwendet wird, schließt dies das Löschen der Bildlisten in voller Größe und kleine Bildlisten ein. |
| WM _ NOTIFY | Verarbeitet Benachrichtigungscodes für Das Headersteuersystem. |
| WM _ PAINT | Zeigt alle Elemente im Updatebereich an. Für Rückrufelemente sendet das Steuerelement zuerst einen LVN _ GETDISPINFO-Benachrichtigungscode an das Besitzerfenster, um Anzeigeinformationen an anforderungs. Wenn der wParam-Parameter nicht NULL ist, geht das Steuerelement davon aus, dass der Wert ein HDC ist, und zeichnet unter Verwendung dieses Gerätekontexts. |
| WM _ RBUTTONDOWN | Die Verarbeitung erfolgt auf die gleiche Weise wie die _ WM-LBUTTONDOWN-Nachricht, mit der Ausnahme, dass das Steuerelement einen NM RCLICK-Benachrichtigungscode _ (Listenansicht) (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 weiterleite. Anwendungen können diese Meldung daher nicht sehen, auch nicht durch Unterklassen des Steuerelements. |
| WM _ SETFOCUS | Neu gemalt das fokussierte Listenelement (sofern verfügbar) und sendet einen NM SETFOCUS-Benachrichtigungscode _ an das übergeordnete Fenster. |
| WM _ SETFONT | Speichert das angegebene Schriftarthandl, gibt die Nachricht an das Headerfenster weiter (sofern dies der Fall ist) und wird mithilfe der neuen Schriftart neu gepaint. |
| WM _ SETREDRAW | Aktiviert oder deaktiviert die Neuzeichnung. |
| WM _ TIMER | Beginnt mit der Bearbeitung einer Elementbezeichnung. Wenn der Benutzer auf die Bezeichnung des Fokuselements klickt, legt das Listenansicht-Steuerelement einen Timer fest, anstatt sofort in den Bearbeitungsmodus zu wechseln. Mit dem Timer kann das Listenansicht-Steuerelement nicht in den Bearbeitungsmodus wechseln, wenn der Benutzer auf die Bezeichnung doppelklickt. |
| WM _ VSCROLL | Führt einen vertikalen Bildlauf für das Listenansichtssteuerfeld durch. |
| _WM-FENSTERPOSCHANGED | Aktualisiert die Fensterscrollleisten. Wenn die aktuelle Ansicht eine Symbolansicht oder eine kleine Symbolansicht ist und der LVS _ AUTOARRANGE-Stil angegeben ist, ordnet das Listenansicht-Steuerelement auch die Listenelemente an. |
| WM _ WININICHANGE | Verarbeitet Änderungen an Systemmetriken. |