0

C++ アプリでは、現在の IME に基づいてどの文字が押されたかを知らせるメッセージをPeekMessage/TranslateMessage呼び出すことができます。WM_CHARこれにより、キーコードを char コードに変換する必要がなくなります。これは、英語以外の IME では困難な場合があります。

WM_CHAR.NET ウィンドウには、 Windows メッセージング イベントと同等のものがありますか? どうにか入手できませんか?明らかに、キーイベントをリッスンしてキーコードを文字コードに変換できますが、Windows が内部的に行うほど堅牢ではない場合があります。

4

2 に答える 2

3

KeyPressイベントと、提供されたKeyPressEventArgsインスタンスのKeyCharプロパティを探しているようです。

于 2013-03-29T08:52:47.860 に答える
1

これに最も近い方法は、MFCWndProc を使用することです。

protected override void WndProc(ref Message m)
{

    if (m.Msg == WM_CHAR) //define WM_CHAR properly 
    {

    }
    base.WndProc(ref m);
}
于 2013-03-29T08:52:49.710 に答える