ToUnicodeEx

Funkcja ToUnicodeEx tłumaczy określony kod klucza wirtualnego i stan klawiatury odpowiedni znak Unicode lub znaków.

int ToUnicodeEx ( UINT  wVirtKey, / / klucza wirtualnego koduUINTwScanCode, / / skanowanie koduPBYTElpKeyState, / / klucz Państwo tablicyLPWSTRpwszBuff, / / buforu dla klucza przetłumaczonej intcchBuff, / / rozmiar przetłumaczonych buforu kluczyUINTwFlags, / / zestaw flag funkcji kondycjonowania HKLdwhkl / / klawiatury układ uchwyt);
 

Parametry

wVirtKey
Określa kod klucza wirtualnego przetłumaczona.
wScanCode
Określa kod skanowania sprzętu klucza przetłumaczona. Jest ustawiony bit wysokich numerach tej wartości, jeżeli klucz jest aktywny.
lpKeyState
Wskaźnik tablicy 256 bajtów, który zawiera bieżący stan klawiatury. Każdy element (bajt) w tablicy zawiera stan jednego klawisza. Jeśli jest ustawiony bit wysokich numerach bajtu, klucz jest wyłączony.
pwszBuff
Wskaźnik do buforu, który odbiera przetłumaczonych Unicode znaku lub znaków.
cchBuff
Określa wielkość liter buforu wskazywanego przez parametr pwszBuff .
wFlags
Zbiór bitów flagi ten warunek zachowania funkcji. Ustawia bit 0, jeśli menu jest aktywny. Zarezerwowano bitów 1-31.
dwhkl
Dojście do układu klawiatury do tłumaczenia danego kodu. Ten parametr może być dowolny uchwyt układu klawiatury, poprzednio zwróconych przez funkcję LoadKeyboardLayout.

Zwraca wartości

Funkcja zwraca jedną z następujących wartości.

Wartość Znaczenie
– 1. Określony klucz wirtualnych – fikcyjna martwych klucz (akcent lub znak diakrytyczny). Ta wartość zwracany jest niezależnie od układu klawiatury, nawet jeśli kilka znaków został wpisany i są przechowywane w stanie klawiatury. Jeśli to możliwe nawet z układami klawiatury Unicode, funkcja ma pisemne wersja odstępy znaków martwych klucz do buforu określony przez pwszBuffer. Na przykład funkcja zapisuje znaków odstępu ostre (0x00B4) zamiast znaku ostrej NON_SPACING (0x0301).
0 Określony klucz wirtualnego ma nie tłumaczenia na bieżący stan klawiatury. Nic nie zapisano do buforu określony przez pwszBuffer.
1 Jeden znak został napisany do buforu określony przez pwszBuffer.
2 lub więcej Dwa lub więcej znaków zostały napisane do buforu określony przez pwszBuff. Najczęstszą przyczyną tego jest, że znak martwych klucza (akcent lub znak diakrytyczny) przechowywane w układzie klawiatury nie mogłaby być połączona z określonego klucza wirtualnego do pojedynczego znaku.

Uwagi

Parametry podane do funkcji ToUnicodeEx mogą być niewystarczające do tłumaczenia kodu klucza wirtualnego, ponieważ poprzedni klucz martwych są przechowywane w układzie klawiatury.

Zazwyczaj ToUnicodeEx wykonuje tłumaczenia na podstawie kodu klucza wirtualnego. W niektórych przypadkach jednak bit 15 parametr wScanCode może służyć do rozróżnienia między naciśnięciem klawisza i klucza wersji.

Skrócone informacje

nbsp; Windows &NT: wymaga w wersji 4.0 lub nowszej.
Systemu Windows:Nieobsługiwane.
Systemu Windows CE:Nieobsługiwane.
Nagłówka:Zadeklarowane w pliku winuser.h.
Importowanie biblioteki:Użycie user32.lib.

Zobacz też

Przegląd danych wejściowych klawiatura, funkcji wprowadzania klawiatury, ToAscii, ToUnicode, VkKeyScan

Index