我正在使用 CEdit 控件。我已经为 ON_EN_KILLFOCUS 消息分配了一个事件处理程序。它被正确调用。但问题是,当我关闭对话框时,此事件处理程序会被调用四次。我怎样才能防止这种情况?
问问题
1526 次
2 回答
0
为什么要试图阻止它?只要确保您的处理程序忽略那些无关紧要的 -
于 2010-10-08T03:57:27.807 回答
-1
刚刚遇到类似的问题并通过分离到不同的处理程序来解决。
我正在使用:
ON_EN_KILLFOCUS(IDE_THRESHOLD, OnKillFocusOnEdit)
ON_EN_KILLFOCUS(IDE_AUTODENY_THRESHOLD, OnKillFocusOnEdit)
OnKillFocusOnEdit
每次这两个编辑中的任何一个失去焦点时都会收到两条消息。
现在通过更改为以下,每个函数按预期只接收一条消息:
ON_EN_KILLFOCUS(IDE_THRESHOLD, OnKillFocusOnEdit)
ON_EN_KILLFOCUS(IDE_AUTODENY_THRESHOLD, OnKillFocusOnAutoDenyEdit)
于 2015-10-28T04:43:12.327 回答