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

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

解决方案 »

  1.   

    最简单的办法就是改回不选中咯if ( BST_CHECKED == IsDlgButtonChecked( IDC_CHECK3 ) ||
    BST_CHECKED == IsDlgButtonChecked( IDC_CHECK4 ))
    {
      CheckDlgButton(IDC_CHECK1, BST_UNCHECKED);
      MessageBox("此选择与前面的选择有悖!", "sacdil_pc", MB_OK) ;
    }
      

  2.   

    我是在不同checkbox控件单击消息中处理的,这只是第一个checkbox控件处理的情况。