ToUnicodeEx

De ToUnicodeEx functie zet de opgegeven virtuele-toonsoort wetboek en de status van het toetsenbord naar de bijbehorende Unicode-teken of tekens.

int () ToUnicodeEx UINT  wVirtKey, / / virtuele-key codeUINTwScanCode, / / code scannenPBYTElpKeyState, / / sleutel-staat matrixLPWSTRpwszBuff, / / buffer voor vertaalde sleutel intcchBuff, / / grootte van vertaalde belangrijke bufferUINTwFlags, / / instellen van functie-conditioning vlaggen HKLdwhkl / / toetsenbord lay-out handvat);
 

Parameters

wVirtKey
Hiermee geeft u de virtuele-sleutel code te vertalen.
wScanCode
Hiermee geeft u de hardware Scancode van de sleutel te vertalen. De hoge-orde bit van deze waarde is ingesteld als de sleutel tot is.
lpKeyState
Aanwijzer naar een 256-byte-matrix die de huidige status van het toetsenbord bevat. Elk element (byte) in de matrix bevat de status van één toets. Als de hoge-orde bit van een byte is ingesteld, is de sleutel naar beneden.
pwszBuff
Pointer naar de buffer die de vertaalde Unicode-teken of tekens ontvangt.
cchBuff
Geeft de grootte in tekens van de buffer waarnaar door de parameter pwszBuff .
wFlags
Een set van bits vlaggen die voorwaarde het gedrag van de functie. Bit 0 ingesteld als een menu actief is. Bits 1 tot en met 31 zijn voorbehouden.
dwhkl
Ingang naar de toetsenbord lay-out te gebruiken om te vertalen de gegeven code. Deze parameter kan worden op een toetsenbord lay-out greep eerder geretourneerd door de functie LoadKeyboardLayout.

Retourwaarden

De functie retourneert een van de volgende waarden.

Waarde Betekenis
-1 De opgegeven virtuele sleutel is een dode-sleutel karakter (accent of diakritisch teken). Deze waarde wordt geretourneerd ongeacht de toetsenbordindeling, zelfs als verschillende tekens hebt getypt en worden opgeslagen in de status van het toetsenbord. Indien mogelijk, zelfs met Unicode toetsenbordindelingen, heeft de functie geschreven een afstand versie van de doden-sleutel karakter aan de buffer opgegeven door pwszBuffer. Bijvoorbeeld, schrijft de functie het teken afstand ACUTE (0x00B4), in plaats van het teken ACUTE NON_SPACING (0x0301).
0 De opgegeven virtuele sleutel heeft geen vertaling voor de huidige status van het toetsenbord. Niets was geschreven naar de buffer opgegeven door pwszBuffer.
1 Eén teken werd aan de buffer opgegeven door pwszBuffer geschreven.
2 of meer Twee of meer tekens zijn geschreven naar de buffer opgegeven door pwszBuff. De meest voorkomende oorzaak voor dit is dat een dode-sleutel karakter (accent of diakritisch teken) opgeslagen in de toetsenbordindeling niet kon worden gecombineerd met de opgegeven virtuele sleutel vormen één teken.

Opmerkingen

De parameters geleverd aan de ToUnicodeEx functie misschien niet voldoende zijn om de virtuele-sleutel code omgezet omdat een eerdere dode sleutel is opgeslagen in de toetsenbordindeling.

ToUnicodeEx voert, de vertaling op basis van de virtuele-sleutel code. In sommige gevallen, echter kan bit 15 van de parameter wScanCode worden gebruikt om onderscheid maken tussen een toetsaanslag en een belangrijke release.

Syntaxisinfo

nbsp; Windows &NT: versie 4.0 of hoger vereist.
Windows:Niet-ondersteunde.
Windows CE:Niet-ondersteunde.
Header:Verklaard in winuser.h.
Bibliotheek importeren:User32.lib gebruiken.

Zie ook

Toetsenbord Input overzicht, toetsenbord Input functies, ToAscii, ToUnicode, VkKeyScan

Index