ダイアログで、キー押下時のKeyAsciiを取得する方法


Z0  2006-06-22 19:56:11  No: 62282

WindowsXPのVC++6.0のMFCで作ったダイアログで、
キー押下されたときにそのキーのKeyAsciiを取得したいのですが、方法はありますか?

VBだとKeyPressイベントの引数がそうですが、VC++だとそれがないようなので。
KeyCodeはKeyDownイベントで引数としてもらえるようなのですが、KeyAsciiが欲しいのです。

また、できればテキストボックスなどの個々のコントロールのイベントではなく、ダイアログのキー押下関連のイベントで取得したいのですが・・・。 

宜しくお願い致します。


Blue  2006-06-22 20:07:24  No: 62283

VC.NET用のMFCのやり方ですが参考にしてみてください。
http://mail2.nara-edu.ac.jp/~asait/visual_cpp/dialog2/keyboard/keyboard.htm

イベントハンドラの追加は、ダイアログを選択して、ClassWizardの画面を出して、
WM_KEYDOWNを選択して、追加してください。


subaru  2006-06-22 22:08:27  No: 62284

ダイアログのPreTranslateMessageをオーバーライドして
WM_CHARのときにKeyAsciiと同じものが取れそうな気がする。


Z0  2006-06-23 04:55:48  No: 62285

ありがとうございます。確認してみます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加