De functie GetKeyboardState wordt de status van de 256 virtuele toetsen gekopieerd naar de gegeven buffer.
BOOL GetKeyboardState () PBYTE lpKeyState / / aanwijzer naar matrix statusgegevens ontvangen);
Als de functie slaagt, is de retourwaarde aan nul.
Als de functie mislukt, is de retourwaarde nul. Te krijgen uitgebreide foutinformatie, Bel GetLastError.
Een toepassing kan deze functie voor het ophalen van de huidige status van alle virtuele toetsen bellen. De statuswijzigingen als een rode draad worden toetsenbord berichten verwijderd uit de berichtenwachtrij. De status verandert niet als toetsenbord berichten zijn gepost naar de berichtenwachtrij van de thread, noch het verandert zoals toetsenbord berichten worden geboekt naar of van berichtenwachtrijen van andere threads ontvangen. (Uitzondering: Threads die zijn verbonden via AttachThreadInput delen dezelfde toetsenbord staat.)
Wanneer de functie retourneert, bevat elk lid van de matrix waarnaar wordt verwezen door de parameter lpKeyState statusgegevens voor een virtuele sleutel. Als de hoge-bit 1 is, is de sleutel anders, het is. Als de lage-orde bit 1 is, is de sleutel een knevel gevoorzid. Of een sleutel, zoals de caps lock key, is uitgezet als deze is ingeschakeld. De sleutel is uitgeschakeld en untoggled als de lage-orde bit 0 is. Van de sleutel van een knevel indicator licht (indien aanwezig) op het toetsenbord zullen op wanneer de sleutel van een knevel wordt gevoorzid, en uit als de sleutel untoggled.
Wilt ophalen statusinformatie voor een persoonlijke sleutel, gebruikt u de functie GetKeyState . Gebruik de functie GetAsyncKeyState om de huidige staat voor een persoonlijke sleutel ongeacht of de bijbehorende toetsenbord bericht is opgehaald uit de berichtenwachtrij ophalen,
Een toepassing kan de virtuele-toonsoort wetboek-constanten VK_SHIFT, VK_CONTROL en VK_MENU gebruiken als indexen in de matrix waarnaar wordt verwezen door lpKeyState. Dit geeft de status van de shift, ctrl of alt toetsen zonder onderscheid te maken tussen links en rechts. Een toepassing kan ook de volgende virtuele-sleutel code-constanten gebruiken als indexcijfers onderscheid maken tussen de linker- en exemplaren van deze toetsen.
| VK_LSHIFT | VK_RSHIFT |
| VK_LCONTROL | VK_RCONTROL |
| VK_LMENU | VK_RMENU |
Deze onderscheiden links - en rechts constanten zijn beschikbaar voor een toepassing alleen door de GetKeyboardState, SetKeyboardState, GetAsyncKeyState, GetKeyStateen MapVirtualKey functies.
nbsp; Windows &NT: versie 3.1 of hoger vereist.
Windows:Windows 95 of hoger vereist.
Windows CE:Niet-ondersteunde.
Header:Verklaard in winuser.h.
Bibliotheek importeren:User32.lib gebruiken.
Toetsenbord Input overzicht, toetsenbord Input functies, GetKeyState, GetAsyncKeyState, MapVirtualKey, SetKeyboardState