CEditコントロールを使用しています。そして、ON_EN_KILLFOCUSメッセージにイベントハンドラーを割り当てました。正しく呼び出されます。ただし、問題は、ダイアログボックスを閉じるたびに、このイベントハンドラーが4回呼び出されることです。どうすればこれを防ぐことができますか?
1526 次
2 に答える
0
なぜそれを防ごうとするのですか?ハンドラーが関係のないものを無視することを確認してください-
于 2010-10-08T03:57:27.807 に答える
-1
同様の問題が発生し、別のハンドラーに分離することで解決しました。
私が使用していたもの:
ON_EN_KILLFOCUS(IDE_THRESHOLD, OnKillFocusOnEdit)
ON_EN_KILLFOCUS(IDE_AUTODENY_THRESHOLD, OnKillFocusOnEdit)
OnKillFocusOnEdit
これらの2つの編集のいずれかがフォーカスを失うたびに2つのメッセージを受信します。
次のように変更すると、各関数は期待どおりに1つのメッセージのみを受信します。
ON_EN_KILLFOCUS(IDE_THRESHOLD, OnKillFocusOnEdit)
ON_EN_KILLFOCUS(IDE_AUTODENY_THRESHOLD, OnKillFocusOnAutoDenyEdit)
于 2015-10-28T04:43:12.327 に答える