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. |