WM_VKEYTOITEM Nachricht

Gesendet von einem Listenfeld mit der LBS_WANTKEYBOARDINPUT Formatvorlage an den Besitzer als Reaktion auf eine WM_KEYDOWN Nachricht.

WM_VKEYTOITEM

    WPARAM wParam;
    LPARAM lParam; 

Parameter

wParam

Der LOWORD gibt den virtuellen Schlüsselcode der Taste an, die der Benutzer gedrückt hat. Das HIWORD gibt die aktuelle Position des Caret an.

lParam

Behandeln sie das Listenfeld.

Rückgabewert

Der Rückgabewert gibt die Aktion an, die die Anwendung als Reaktion auf die Nachricht ausgeführt hat. Ein Rückgabewert von -2 gibt an, dass die Anwendung alle Aspekte des Auswählens des Elements behandelt und keine weitere Aktion durch das Listenfeld erfordert. (Siehe Hinweise.) Ein Rückgabewert von -1 gibt an, dass das Listenfeld als Reaktion auf die Tasteneingabe die Standardaktion ausführen soll. Ein Rückgabewert von 0 oder höher gibt den Index eines Elements im Listenfeld an und gibt an, dass das Listenfeld die Standardaktion für die Tasteneingabe für das angegebene Element ausführen soll.

Bemerkungen

Ein Rückgabewert von -2 ist nur für Schlüssel gültig, die nicht durch das Listenfeld-Steuerelement in Zeichen übersetzt werden. Wenn die WM_KEYDOWN Nachricht in eine WM_CHAR Nachricht übersetzt wird und die Anwendung die WM_VKEYTOITEM Nachricht verarbeitet, die als Ergebnis der Taste generiert wird, ignoriert das Listenfeld den Rückgabewert und führt die Standardverarbeitung für dieses Zeichen aus). WM_KEYDOWN Nachrichten, die von Schlüsseln wie VK_UP, VK_DOWN, VK_NEXT und VK_PREVIOUS generiert werden, werden nicht in WM_CHAR Nachrichten übersetzt. In solchen Fällen verhindert das Abfangen der WM_VKEYTOITEM Nachricht und das Zurückgeben von -2, dass das Listenfeld die Standardverarbeitung für diesen Schlüssel ausführt.

Wenn Sie Schlüssel abfangen möchten, die eine Zeichennachricht generieren und eine spezielle Verarbeitung ausführen, muss die Anwendung das Listenfeld unterklassen unterklassen speichern, sowohl die WM_KEYDOWN als auch WM_CHAR Nachrichten abfangen und die Nachrichten entsprechend in der Unterklassenprozedur verarbeiten.

Die vorstehenden Hinweise gelten für reguläre Listenfelder, die mit der LBS_WANTKEYBOARDINPUT Formatvorlage erstellt werden. Wenn das Listenfeld besitzergezeichnet ist, muss die Anwendung die WM_CHARTOITEM Nachricht verarbeiten.

Die DefWindowProc-Funktion gibt -1 zurück.

Wenn eine Dialogfeldprozedur diese Meldung behandelt, sollte er den gewünschten Rückgabewert in ein BOOL umwandeln und den Wert direkt zurückgeben. Der durch die SetWindowLong-Funktion festgelegte DWL_MSGRESULT Wert wird ignoriert.

Requirements (Anforderungen)

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2003 [Nur Desktop-Apps]
Header
Winuser.h (einschließen Windows.h)

Siehe auch

Referenz

WM_CHARTOITEM

Andere Ressourcen

HIWORD

LOWORD

WM_KEYDOWN