WM_SYSKEYDOWN

Het WM_SYSKEYDOWN bericht is gepost naar het venster met de toetsenbordfocus wanneer de gebruiker op F10 drukt (die activeert de menubalk) of houdt u de alt-toets en vervolgens op een andere toets drukt. Het treedt ook op als er geen venster is momenteel de toetsenbordfocus; in dit geval, wordt WM_SYSKEYDOWN het bericht naar het actieve venster. Het venster dat het bericht ontvangt kan onderscheid maken tussen deze twee contexten door het controleren van de code van de context in de parameter lKeyData.

WM_SYSKEYDOWN nVirtKey = wParam (int);    / / virtuele-sleutel code lKeyData = lParam;          / / sleutel gegevens 
 

Parameters

nVirtKey
Waarde van wParam. Hiermee geeft u het virtuele-sleutel code van de toets wordt ingedrukt.
lKeyData
Waarde van lParam. Hiermee geeft u de herhaling tellen, Scancode, uitgebreid-sleutel vlag, context code, vorige sleutel-vlag en overgang-vlag, zoals in de volgende tabel.
Waarde Beschrijving
0–15 Hiermee geeft u de Herhaal aantal voor het huidige bericht. De waarde is het aantal keren die de toetsaanslag is auto-herhaald als gevolg van de gebruiker de toets ingedrukt. Als de toetsaanslag wordt gehouden lang genoeg, zijn meerdere berichten verzonden. Echter, de herhaling telling is niet cumulatief.
evenement Hiermee geeft u de Scancode. De waarde hangt af van de original equipment manufacturer (OEM).
24 Hiermee geeft u aan of de sleutel is een uitgebreide sleutel, zoals de rechter alt en ctrl-toetsen die worden weergegeven op een verbeterde 101 - of 102-key toetsenbord. De waarde is 1 als het is een uitgebreide sleutel; anders is het 0.
testsessies Voorbehouden; Gebruik geen.
29 Hiermee geeft u de context-code. De waarde is 1 als de ALT-toets is ingedrukt terwijl de toets is ingedrukt; het is 0 als het WM_SYSKEYDOWN bericht is gepost naar het actieve venster omdat geen venster de focus van het toetsenbord heeft.
30 Hiermee geeft u de vorige belangrijkste staat. De waarde is 1 als de sleutel niet actief is voordat het bericht wordt verzonden, of het is 0 als de sleutel tot is.
31 Hiermee geeft u de overgang staat. De waarde is altijd 0 voor een WM_SYSKEYDOWN-bericht.

Retourwaarden

Een toepassing moet nul retourneren als het dit bericht verwerkt.

Standaardactie

De DefWindowProc functie onderzoekt de gegeven sleutel en genereert een WM_SYSCOMMAND -bericht als de sleutel ofwel tabblad is of invoeren.

Opmerkingen

Wanneer de context code nul is, kan het bericht worden doorgegeven aan de functie TranslateAccelerator , die zal het behandelen alsof het een normale kernboodschap in plaats van een karakter-sleutel bericht. Hierdoor sneltoetsen met het actieve venster worden gebruikt, zelfs als het actieve venster geen focus van het toetsenbord heeft.

Vanwege automatische herhalen, meer dan één WM_SYSKEYDOWN bericht kan zich voordoen voordat een WM_SYSKEYUP-bericht wordt verzonden. De vorige belangrijkste staat (30 bits) kan worden gebruikt om te bepalen of de WM_SYSKEYDOWN-bericht geeft aan de overgang van de eerste down of een herhaalde neer overgang.

Voor verbeterde 101 en 102-toetsen zijn verbeterde sleutels de juiste alt en ctrl-toetsen op het hoofdgedeelte van het toetsenbord; de ins, del, home, einde, page up, page down en pijltoetsen in de clusters aan de linkerkant van het numerieke toetsenblok; en de kloof (/) en ga sleutels in het numerieke toetsenblok. Andere toetsenborden kunnen ondersteunen de bit uitgebreid-sleutel in de parameter lParam.

Dit bericht is ook verzonden wanneer de gebruiker op de F10 sleutel zonder de ALT-toets.

Syntaxisinfo

nbsp; Windows &NT: versie 3.1 of hoger vereist.
Windows:Windows 95 of hoger vereist.
Windows CE:Versie 1.0 of hoger vereist.
Header:Verklaard in winuser.h.

Zie ook

Toetsenbord Input overzicht, toetsenbord Input berichten, DefWindowProc, TranslateAccelerator, WM_SYSCOMMAND, WM_SYSKEYUP

Index