ToUnicodeEx

La funzione ToUnicodeEx si traduce il codice tasto virtuale specificato e stato della tastiera per il carattere Unicode corrispondente o i caratteri.

int (ToUnicodeEx UINT  wVirtKey, / / tasto virtuale di codiceUINTwScanCode, / / codice di scansionePBYTElpKeyState, / / chiave dello stato di matriceLPWSTRpwszBuff, / / buffer per chiave tradotte intcchBuff, / / dimensione del buffer chiave tradotteUINTwFlags, / / impostare dei flag di funzione-condizionamento HKLdwhkl / / handle layout di tastiera);
 

Parametri

wVirtKey
Specifica il codice tasto virtuale da tradurre.
wScanCode
Specifica il codice di scansione hardware della chiave da tradurre. Il bit di ordine superiore di questo valore è impostato se la chiave è fino.
lpKeyState
Puntatore a una matrice di 256 byte che contiene lo stato corrente della tastiera. Ogni elemento (byte) nella matrice contiene lo stato di un tasto. Se è impostato il bit di ordine superiore di un byte, il tasto è premuto.
pwszBuff
Puntatore al buffer che riceve il carattere Unicode o i caratteri tradotti.
cchBuff
Specifica la dimensione in caratteri di buffer a cui puntata il parametro pwszBuff .
wFlags
Un insieme di bit flag tale condizione il comportamento della funzione. Impostare il bit 0 se è attivo un menu. Bit 1 e 31 sono riservati.
dwhkl
Handle per il layout di tastiera per utilizzare per tradurre il codice dato. Questo parametro può essere qualsiasi handle del layout di tastiera precedentemente restituito dalla funzione LoadKeyboardLayout.

Valori restituiti

La funzione restituisce uno dei valori seguenti.

Valore Significato
– 1 La chiave specificata virtuale è un personaggio di morti-chiave (accento o segno diacritico). Questo valore viene restituito indipendentemente dal layout di tastiera, anche se molti personaggi hanno stati digitati e vengono archiviati nello stato di tastiera. Se possibile, anche con layout di tastiera di Unicode, la funzione ha scritto una versione di spaziatura del personaggio chiave di morti nel buffer specificato da pwszBuffer. Ad esempio, la funzione scrive il carattere di spaziatura acuto (0x00B4), piuttosto che il personaggio di NON_SPACING acuta (0x0301).
0 La chiave specificata virtuale non ha alcuna traduzione per lo stato corrente della tastiera. Nulla è stato scritto nel buffer specificato da pwszBuffer.
1 Un carattere è stato scritto nel buffer specificato da pwszBuffer.
2 o più Due o più caratteri sono stati scritti nel buffer specificato da pwszBuff. La causa più comune di questo è che un personaggio chiave di morti (accento o segno diacritico) memorizzato nel layout di tastiera non poteva essere combinato con la chiave specificata virtuale per formare un singolo carattere.

Osservazioni

I parametri forniti alla funzione ToUnicodeEx potrebbero non essere sufficienti per tradurre il codice tasto virtuale perché una chiave morta precedente viene memorizzata nel layout della tastiera.

In genere, ToUnicodeEx esegue la traduzione basata sul codice tasto virtuale. In alcuni casi, tuttavia, bit 15 del parametro wScanCode può essere utilizzato per distinguere un tasto e un comunicato chiave.

Descrizione

nbsp; Windows &NT: richiede una versione 4.0 o successive.
Windows:Non supportato.
Windows CE:Non supportato.
Intestazione:Dichiarati in winuser.
Importare librerie:Utilizzare user32.lib.

Vedi anche

Cenni preliminari sull'Input di tastiera, funzioni di Input di tastiera, ToAscii, ToUnicode, VkKeyScan

Rimedio: Inserire il CD-ROM CD di MSDN Library.

Index