仮想キーコードとキーの状態に対応するWindows文字(AscII値)を取得する
Declare Function ToAscii Lib "user32.dll" _
(ByVal uVirtKey As Long, ByVal uScanCode As Long, _
lpKeyState As Any, lpChar As Long, ByVal uFlags As Long) As Long
Declare Function ToAscii Lib "user32.dll" _
(ByVal uVirtKey As Integer, ByVal uScanCode As Integer, _
lpKeyState As Integer, lpChar As Integer, ByVal uFlags As Integer) As Integer
int ToAscii(
UINT uVirtKey,
UINT uScanCode,
PBYTE lpKeyState,
LPWORD lpChar,
UINT uFlags
);
引数
uVirtKey
仮想キーコードuScanCode
スキャンコード(ビット7がオンのとき、キーダウン状態を示す)lpKeyState
キーボードの状態を示す256バイトのバイト配列lpChar
ビット7がオンのとき、キーダウン状態を示す
ビット0がオンのとき、Capsロックキーがオン
(戻り値)AscII値を受け取るバッファuFlags
メニューがアクティブかどうかを指定するフラッグ戻り値
メニューがアクティブなとき 1
アクティブでないとき 0
指定のキーがデッドキーのとき 負数戻り値を示す定数
それ以外のとき 戻り値を示す定数
0 指定の仮想キーは、キーの状態に対して変換されなかった
1 バッファに1文字コピーした
2 バッファに2文字コピーした(デッドキーを使うときのみ発生)