| ホーム > プログラミング > Windows プログラミング > Enterキー(Escキー)を押しても、ダイアログが閉じないようにするには |
ダイアログは、EnterキーおよびEscキーを押すと、ダイアログが閉じるようになっています。
なぜこのような動作をするのかというと、CDialogの実装として、
「Enterキーを押すと、標準のボタン(通常はOKボタン)を押した動作」
「Escキーを押すと、Cancelボタンを押した動作」
をするように実装されており、さらに
「OKボタンを押したときには、ダイアログを閉じる」
「Cancelボタンを押したときには、ダイアログを閉じる」
ように実装されているためです。
EnterキーおよびEscキーを押しても、ダイアログが閉じないようにするには、
ダイアログのクラスのPreTranslateMessage関数で、VK_RETURN、VK_ESCAPEをキャッチし、CDialogの実装の処理が行なわれないようにします。
コメント
ご意見、ご感想、ご質問、ご要望等は、「コメントを投稿する」もしくは「ホーム
> コンタクト」よりお願いいたします。
内容の誤り、誤字脱字、リンクミスなどの問題点を発見された場合には「コメントを投稿する」もしくは「ホーム
> コンタクト」より連絡していただけると幸いです。
Copyright (c) 2004-2010 Nobuki HIRAMINE All rights reserved.