Funkcja ToAscii tłumaczy określony kod klucza wirtualnego i stan klawiatury do odpowiedniego znaku lub znaków. Funkcja tłumaczy kodu za pomocą język i układ klawiatury fizyczne zidentyfikowane przez uchwyt układ klawiatury danego.
int ToAscii ( UINT uVirtKey, / / klucza wirtualnego koduUINTuScanCode, / / skanowanie koduPBYTElpKeyState, / / klucz Państwo tablicyLPWORDlpChar, / / buforu dla klucza przetłumaczonejUINTuFlags / / aktywny menu Flaga);
Nisko bit, jeżeli jest ustawiony, wskazuje, że klucz jest przełączana na. Funkcja ta tylko bit Przełącz klawisza caps lock jest odpowiednie. Stan przełącznika kluczy num lock i scroll lock jest ignorowane.
Jeśli określonego klucza jest kluczem martwe, wartość zwracany jest ujemna. W przeciwnym przypadku jest to jedna z następujących wartości.
| Wartość | Znaczenie |
|---|---|
| 0 | Określony klucz wirtualnego ma nie tłumaczenia na bieżący stan klawiatury. |
| 1 | Jeden znak został skopiowany do buforu. |
| 2 | Dwa znaki zostały skopiowane do buforu. Zazwyczaj dzieje się, gdy znak martwych klucza (akcent lub znak diakrytyczny) przechowywane w układzie klawiatury nie może składać się z określonego klucza wirtualnego do pojedynczego znaku. |
Parametry podane do funkcji ToAscii może nie jest wystarczająca do tłumaczenia kodu klucza wirtualnego, ponieważ poprzedni klucz martwych są przechowywane w układzie klawiatury.
Zazwyczaj ToAscii wykonuje tłumaczenia na podstawie kodu klucza wirtualnego. W niektórych przypadkach jednak bit 15 parametr uScanCode może być używane do rozróżnienia między naciśnięciem klawisza i klucza wersji. Kod skanowania jest używany do tłumaczenianumer klucza kombinacji ALT +.
Mimo, że klawisz num lock jest klawiszem przełączania, który wpływa na zachowanie klawiatury, ToAscii ignoruje ustawienia przełącznika (niskie bity) lpKeyState (VK_NUMLOCK, ponieważ parametr uVirtKey samodzielnie jest wystarczające, aby odróżnić klawisze przemieszczania kursora (VK_HOME, VK_INSERT itd.) od klawisze numeryczne (VK_DECIMAL, VK_NUMPAD0 - VK_NUMPAD9).
nbsp; Windows &NT: wymagana wersja 3.1 lub nowsza.
Systemu Windows:Wymaga systemu Windows 95 lub nowszego.
Systemu Windows CE:Nieobsługiwane.
Nagłówka:Zadeklarowane w pliku winuser.h.
Importowanie biblioteki:Użycie user32.lib.
Przegląd danych wejściowych klawiatura, funkcji wprowadzania klawiatury, OemKeyScan, ToUnicode, VkKeyScan