Megosztás a következőn keresztül:


Billentyűzet bemenete

Ez a szakasz azt ismerteti, hogyan hozza létre a rendszer a billentyűzetbemenetet, valamint azt, hogy az alkalmazás hogyan fogadja és dolgozza fel a bemenetet.

Ebben a szakaszban

Név Leírás
A billentyűzetbemeneti A billentyűzet bemenetét ismerteti.
Billentyűzetbemeneti A billentyűzetbemenettel társított feladatokat ismerteti.
billentyűzetbemeneti referencia Az API-referenciát tartalmazza.

Funkciók

Név Leírás
ActivateKeyboardLayout Beállítja a hívási szál vagy az aktuális folyamat bemeneti területi azonosítóját (korábbi nevén billentyűzetkiosztási leíróját). A bemeneti területi azonosító megadja a területi beállításokat és a billentyűzet fizikai elrendezését.
BlockInput Letiltja, hogy a billentyűzet- és egérbemeneti események elérjék az alkalmazásokat.
EnableWindow Engedélyezi vagy letiltja az egér- és billentyűzetbemenetet a megadott ablakban vagy vezérlőben. Ha a bemenet le van tiltva, az ablak nem kap bemenetet, például az egérkattintásokat és a billentyűnyomásokat. Ha a bemenet engedélyezve van, az ablak minden bemenetet megkap.
GetActiveWindow Lekéri az ablak fogópontját a hívószál üzenetsorához csatolt aktív ablakhoz.
GetAsyncKeyState Meghatározza, hogy a függvény meghívásakor egy kulcs fel vagy le van-e állítva, és hogy a kulcs a GetAsyncKeyStatekorábbi hívása után lett-e lenyomva.
GetFocus Lekéri a fogópontot a billentyűzetfókuszt tartalmazó ablakhoz, ha az ablak a hívószál üzenetsorához van csatolva.
GetKeyboardLayout Lekéri a megadott szál aktív bemeneti területi azonosítóját (korábbi nevén billentyűzetkiosztást). Ha az idThread paraméter nulla, a rendszer visszaadja az aktív szál bemeneti területi azonosítóját.
GetKeyboardLayoutList Lekéri a rendszer aktuális bemeneti területi beállításainak megfelelő bemeneti területi azonosítókat (korábbi nevén billentyűzetkiosztási fogópontok). A függvény az azonosítókat a megadott pufferbe másolja.
GetKeyboardLayoutName Lekéri az aktív bemeneti területi azonosító (korábbi nevén billentyűzetkiosztás) nevét.
GetKeyboardState Másolja a 256 virtuális kulcs állapotát a megadott pufferbe.
GetKeyNameText Lekéri a kulcs nevét képviselő sztringet.
GetKeyState Lekéri a megadott virtuális kulcs állapotát. Az állapot azt határozza meg, hogy a kulcs fel, le vagy ki van-e kapcsolva (bekapcsolva, váltakozva a billentyű minden egyes lenyomásakor).
GetLastInputInfo Lekéri az utolsó bemeneti esemény időpontját.
IsWindowEnabled Meghatározza, hogy a megadott ablak engedélyezve van-e az egér- és billentyűzetbemenethez.
LoadKeyboardLayout Betölt egy új bemeneti területi azonosítót (korábbi nevén billentyűzetkiosztást) a rendszerbe. Egyszerre több bemeneti területi azonosító is betölthető, de folyamatonként csak egy aktív egyszerre. Több bemeneti területi azonosító betöltése lehetővé teszi a gyors váltást közöttük.
MapVirtualKey Lefordítja (leképezi) a virtuáliskulcs-kódot egy vizsgálati kódra vagy karakterértékre, vagy lefordít egy beolvasási kódot egy virtuáliskulcs-kódra.
Ha meg szeretne adni egy leírót a billentyűzetkiosztáshoz a megadott kód fordításához, használja a MapVirtualKeyEx függvényt.
MapVirtualKeyEx Leképez egy virtuáliskulcs-kódot egy beolvasási kódba vagy karakterértékbe, vagy lefordít egy beolvasási kódot egy virtuáliskulcs-kódra. A függvény lefordítja a kódokat a bemeneti nyelv és egy bemeneti területi azonosító használatával.
OemKeyScan Leképezi a 0-ás OEMASCII-kódokat 0x0FF az OEM vizsgálati kódjaiba és a műszakállapotokba. A függvény olyan információkat tartalmaz, amelyek lehetővé teszik, hogy a program a billentyűzet bemenetének szimulálásával oem-szöveget küldjön egy másik programnak.
RegisterHotKey Rendszerszintű gyorsbillentyűt definiál.
SendInput Szintetizálja a billentyűleütéseket, az egérmozgásokat és a gombkattintásokat.
SetActiveWindow Aktivál egy ablakot. Az ablakot a hívószál üzenetsorához kell csatolni.
SetFocus A billentyűzetfókusz beállítása a megadott ablakra. Az ablakot a hívószál üzenetsorához kell csatolni.
SetKeyboardState A billentyűállapotok 256 bájtos tömbjét másolja a hívószál billentyűzetbemeneti állapottáblájába. Ugyanez a GetKeyboardState és GetKeyState függvény által elért táblázat. A táblázat módosításai nem befolyásolják a billentyűzet más szálon történő bevitelét.
ToAscii Lefordítja a megadott virtuáliskulcs-kódot és billentyűzetállapotot a megfelelő karakterre vagy karakterekre. A függvény lefordítja a kódot a billentyűzetkiosztási leíró által azonosított beviteli nyelv és fizikai billentyűzetkiosztás használatával.
Ha meg szeretne adni egy fogópontot a billentyűzetkiosztáshoz a megadott kód lefordításához, használja a ToAsciiEx függvényt.
ToAsciiEx Lefordítja a megadott virtuáliskulcs-kódot és billentyűzetállapotot a megfelelő karakterre vagy karakterekre. A függvény a bemeneti területi azonosító által azonosított bemeneti nyelv és fizikai billentyűzetkiosztás használatával fordítja le a kódot.
ToUnicode Lefordítja a megadott virtuáliskulcs-kódot és billentyűzetállapotot a megfelelő Unicode-karakterre vagy karakterekre.
Ha meg szeretne adni egy leírót a billentyűzetkiosztáshoz a megadott kód lefordításához, használja a ToUnicodeEx függvényt.
ToUnicodeEx Lefordítja a megadott virtuáliskulcs-kódot és billentyűzetállapotot a megfelelő Unicode-karakterre vagy karakterekre.
UnloadKeyboardLayout Eltávolít egy bemeneti területi azonosítót (korábbi nevén billentyűzetkiosztást).
UnregisterHotKey Felszabadít egy, a hívási szál által korábban regisztrált gyorsbillentyűt.
VkKeyScanEx Egy karaktert lefordít a megfelelő virtuáliskulcs-kódra és műszakállapotra. A függvény a bemeneti területi azonosító által azonosított beviteli nyelv és fizikai billentyűzetkiosztás használatával fordítja le a karaktert.

Az alábbi függvények elavultak.

Funkció Leírás
GetKBCodePage Lekéri az aktuális kódlapot.
keybd_event Billentyűleütés szintetizálása. A rendszer egy ilyen szintetizált billentyűleütést használhat egy WM_KEYUP vagy WM_KEYDOWN üzenet létrehozásához. A billentyűzetillesztő megszakításkezelője meghívja a keybd_event függvényt.
VkKeyScan Egy karaktert lefordít az aktuális billentyűzet megfelelő virtuáliskulcs-kódjára és műszakállapotára.

Üzenetek

Név Leírás
WM_GETHOTKEY Meghatározza az ablakhoz társított gyorsbillentyűt.
WM_SETHOTKEY Gyorsbillentyű társítása az ablakhoz. Amikor a felhasználó lenyomja a gyorsbillentyűt, a rendszer aktiválja az ablakot.

Értesítések

Név Leírás
WM_ACTIVATE Mind az aktivált ablaknak, mind az inaktivált ablaknak elküldve. Ha az ablakok ugyanazt a bemeneti üzenetsort használják, a rendszer szinkron módon küldi el az üzenetet, először a legfelső szintű ablak inaktivált ablakának eljárására, majd az aktivált felső szintű ablak ablakeljárására. Ha az ablakok különböző bemeneti üzenetsorokat használnak, a rendszer aszinkron módon küldi el az üzenetet, így az ablak azonnal aktiválódik.
WM_APPCOMMAND Értesítést küld arról, hogy a felhasználó létrehozott egy alkalmazásparancs-eseményt, például egy alkalmazásparancs gombra kattintva az egérrel, vagy begépel egy alkalmazásparancskulcsot a billentyűzeten.
WM_CHAR A TranslateMessage függvény WM_KEYDOWN üzenet lefordításakor a billentyűzetfókuszú ablakba kerül. A WM_CHAR üzenet a lenyomott kulcs karakterkódját tartalmazza.
WM_DEADCHAR A TranslateMessage függvény WM_KEYUP üzenetének lefordításakor a billentyűzetfókuszt tartalmazó ablakba kerül. WM_DEADCHAR egy halott kulcs által létrehozott karakterkódot határoz meg. A halott kulcs olyan kulcs, amely létrehoz egy karaktert, például az umlaut (dupla pont), amelyet egy másik karakterrel kombinálva összetett karaktert alkot. Az umlaut-O karakter ( ) például az umlaut karakter halott kulcsának beírásával, majd az O-kulcs beírásával jön létre.
WM_HOTKEY Közzétéve, amikor a felhasználó lenyom egy gyorsbillentyűt, amelyet a RegisterHotKey függvény regisztrál. Az üzenet a gyorsbillentyűt regisztráló szálhoz társított üzenetsor tetején található.
WM_KEYDOWN Nem rendszerkulcs lenyomásakor a billentyűzetfókuszt tartalmazó ablakba kerül. A nem rendszerkulcsok olyan kulcsok, amelyek akkor lesznek lenyomva, ha az ALT billentyű nincs lenyomva.
WM_KEYUP Nem rendszerkulcs kiadásakor a billentyűzetfókuszt tartalmazó ablakban jelenik meg. A nem rendszerkulcs olyan billentyű, amelyet az ALT billentyű lenyomása után lenyom, vagy olyan billentyűzetbillentyű, amelyet akkor nyom le, ha egy ablak fókusza a billentyűzet fókusza.
WM_KILLFOCUS Közvetlenül az ablakba küldve, mielőtt elveszítené a billentyűzetfókuszt.
WM_SETFOCUS A billentyűzetfókusz megszerzése után egy ablakba küldve.
WM_SYSDEADCHAR A TranslateMessage függvény WM_SYSKEYDOWN üzenet lefordításakor a billentyűzetfókuszt tartalmazó ablakba küldi. WM_SYSDEADCHAR a rendszer halott kulcsának karakterkódját adja meg, amely egy olyan halott kulcs, amely az ALT billentyű lenyomása közben lesz lenyomva.
WM_SYSKEYDOWN Ha a felhasználó lenyomja az F10 billentyűt (amely aktiválja a menüsávot), vagy lenyomja az ALT billentyűt, majd lenyom egy másik billentyűt, a billentyűzetfókuszt tartalmazó ablakba kerül. Akkor is előfordul, ha jelenleg egyetlen ablak sem rendelkezik a billentyűzetfókuszával; ebben az esetben a WM_SYSKEYDOWN üzenet az aktív ablakba kerül. Az üzenetet fogadó ablak a lParam paraméter környezeti kódjának ellenőrzésével képes különbséget tenni a két környezet között.
WM_SYSKEYUP A billentyűzetfókuszt tartalmazó ablakba kerül, amikor a felhasználó felenged egy billentyűt, amelyet az ALT billentyű lenyomása közben lenyomott. Akkor is előfordul, ha jelenleg egyetlen ablak sem rendelkezik a billentyűzetfókuszával; ebben az esetben a WM_SYSKEYUP üzenet az aktív ablakba kerül. Az üzenetet fogadó ablak a lParam paraméter környezeti kódjának ellenőrzésével képes különbséget tenni a két környezet között.
WM_UNICHAR A TranslateMessage függvény WM_KEYDOWN üzenet lefordításakor a billentyűzetfókuszú ablakba kerül. A WM_UNICHAR üzenet a lenyomott kulcs karakterkódját tartalmazza.

Struktúrák

Név Leírás
HARDWAREINPUT A billentyűzeten vagy egéren kívül más beviteli eszköz által létrehozott szimulált üzenetre vonatkozó információkat tartalmaz.
INPUT Olyan információkat tartalmaz, amelyeket a bemeneti események, például a billentyűleütések, az egér mozgása és az egérkattintások szintetizálásához használnak.
KEYBDINPUT Egy szimulált billentyűzetesemény adatait tartalmazza.
LASTINPUTINFO Az utolsó bemenet időpontját tartalmazza.
MOUSEINPUT Egy szimulált egéresemény adatait tartalmazza.

Állandók

Név Leírás
Virtual-Key kódok A rendszer által használt virtuáliskulcs-kódok szimbolikus állandó nevei, hexadecimális értékei és egér- vagy billentyűzet-megfelelői. A kódok numerikus sorrendben vannak felsorolva.

Lásd még: