Edit的EN_KillFocus事件,该怎么解决

Edit的EN_KillFocus事件
假设对话框里有两个编辑框IDC_EDIT1,IDC_EDIT2,在两个编辑框的EN_KillFocus事件函数中MessageBox();   鼠标先点击IDC_EDIT1   后在点击IDC_EDIT2,结果是:先输出 "2 "的EN_KillFocus事件,再输出 "1 "的EN_KillFocus事件
先点击IDC_EDIT1在点击时IDC_EDIT2时,也是先输出 "1 "的,后输出 "2 "的;  

是因为焦点在从IDC_EDIT1向IDC_EDIT2传递时被MessageBox抢先获得了,故IDC_EDIT2还未真正获得焦点就已经先失去他了,就先执行了 "2 "的EN_KillFocus事件

怎样避免这样的情况,就是先点击IDC_EDIT1   后在点击IDC_EDIT2,不出现“2”的EN_KillFocus事件,MessageBox有必要要的。
 


------解决方案--------------------
你可以先让对话框弹出来,然后再让2得到焦点
也就是说在1的kill事件中,
{
AfxMessageBox( "点击得是我! ");
m_ctEdit1.GetFocus();//让2得到焦点
}
------解决方案--------------------
加个判断好了,2第二次离开再弹出