MFC中控件讯息的处理

MFC中控件消息的处理
我创建了四个checkbox控件的按钮,但这四个按钮只能选择其中的一个,当有一个按钮被选中时再选择另外一个时,弹出对话框说选择冲突,我写的代码:
void CShangXianDlg::OnBnClickedCheck1()
{
// TODO: 在此添加控件通知处理程序代码
if ( BST_CHECKED == IsDlgButtonChecked( IDC_CHECK3 ) ||
BST_CHECKED == IsDlgButtonChecked( IDC_CHECK4 ))
{
MessageBox("此选择与前面的选择有悖!", "sacdil_pc", MB_OK) ;
}

}
但处理之后,按钮还是被选中了,我想只是弹出对话框,而按钮没有被选中,那怎么加入代码呢?求解答。

------解决方案--------------------
最简单的办法就是改回不选中咯
C/C++ code

if ( BST_CHECKED == IsDlgButtonChecked( IDC_CHECK3 ) ||
BST_CHECKED == IsDlgButtonChecked( IDC_CHECK4 ))
{
  CheckDlgButton(IDC_CHECK1, BST_UNCHECKED);
  MessageBox("此选择与前面的选择有悖!", "sacdil_pc", MB_OK) ;
}

------解决方案--------------------
你控件绑定是不是出了问题?都绑定一个变量了?