ToUnicode

ToUnicode функция преобразует указанный виртуальный ключ код и состояние клавиатуры на соответствующий символ Юникода или символов.

int ToUnicode) UINT  wVirtKey, / / виртуальный ключ кодUINTwScanCode, / / сканирования кодаPBYTElpKeyState, / / адрес массива ключ государствоLPWSTRpwszBuff, / / буфер для переведенных ключа intcchBuff, / / размер перевода ключевых буфераUINTwFlags / / набор флагов функции кондиционирования);
 

Параметры

wVirtKey
Указывает код виртуального ключа для перевода.
wScanCode
Указывает код сканирования аппаратного ключа для перевода. Старший бит этого значения устанавливается, если ключ является вверх.
lpKeyState
Указатель на массив 256 байт, содержащий текущее состояние клавиатуры. Каждый элемент (байт) в массиве содержит состояние одной клавиши. Если старший бит байта, ключ не работает.
pwszBuff
Указатель на буфер, который получает переведенный Unicode символы.
cchBuff
Указывает размер в символах буфера, который указывает параметр pwszBuff .
wFlags
Набор бит флаги состояния поведение функции. Установить бит 0, если активно меню. Зарезервированные биты 1 до 31.

Возвращаемые значения

Функция возвращает одно из следующих значений.

Значение Значение
– 1 Указанный виртуальный ключ — персонаж мертвых ключ (акцент или диакритический знак). Это значение возвращается вне зависимости от раскладки клавиатуры, даже если несколько персонажей ввода и хранятся в состоянии клавиатуры. Если возможно даже с Unicode раскладки клавиатуры, функция написал интервал версии мертвых ключ символа в буфер, предусмотренных pwszBuffer. Например функция записывает символ ИНТЕРВАЛОВ ЯДОВИТЫЕ (0x00B4), а не характер ОСТРОГО NON_SPACING (0x0301).
0 Указанный виртуальный ключ имеет перевод не для текущего состояния клавиатуры. Ничего не было записано в буфер, предусмотренных pwszBuffer.
1 Один символ был написан в буфер, предусмотренных pwszBuffer.
2 или более Два или более символов были написаны в буфер, предусмотренных pwszBuff. Наиболее распространенной причиной для этого является символ мертвых ключ (акцент или диакритический знак), хранится в раскладку клавиатуры может не объединить с указанным виртуальным ключом для формирования одного символа.

Примечания

Параметры предоставлены ToUnicode функции может быть недостаточно для перевода виртуального ключа кода, потому что предыдущий мертвых ключ хранится в раскладка клавиатуры.

Как правило ToUnicode выполняет перевод на базе виртуального ключа кода. В некоторых случаях однако, бит 15 wScanCode параметра позволяют различать клавиши и ключевых релиз.

QuickInfo

nbsp; Windows &NT: требует версии 3.1 или более поздней версии.
Windows:Не поддерживается.
Windows CE:Не поддерживается.
Заголовок:Объявленные в winuser.h.
Импорта библиотеки:Использование user32.lib.

Родственные слова

Обзор ввода клавиатуры, функции ввода клавиатуры, ToAscii, VkKeyScan

Index