单选钮用来表示一系列的互斥选项,这些互斥项常常被分成若干个组,每组仅允许用户选择一个选项;复选框与单选按钮相象,不同之处是复选框代表多重选择,用户可以选择一个或多个选项。 判断哪个单选按钮按下:第一种方式:给IDC_RADIO1关联一个int型变量m_radio,首先调用UpdateData(TRUE);然后判断IDC_RADIO1的值 switch(m_radio) { case 0: MessageBox(_T("100")); break; case 1: MessageBox(_T("90")); break; case 2: MessageBox(_T("80")); break; case 3: MessageBox(_T("70")); break; } 第二种方式: switch(GetCheckedRadioButton(IDC_RADIO1,IDC_RADIO4)) { case IDC_RADIO1: MessageBox(_T("100")); break; case IDC_RADIO2: MessageBox(_T("90")); break; case IDC_RADIO3: MessageBox(_T("80")); break; case IDC_RADIO4: MessageBox(_T("70")); break; } 判断哪些复选按钮按下:第一种方式:给IDC_CHECK1~IDC_CHECK4分别关联一个BOOL型变量m_check1~m_check4,首先调用UpdateData(TRUE);然后判断各个变量的值; if(m_check1==TRUE) str+="10"; if(m_check2==TRUE) str+="9"; if(m_check3==TRUE) str+="8"; if(m_check4==TRUE) str+="7"; MessageBox(str); 第二种方式:给IDC_CHECK1~IDC_CHECK4分别关联一个CButton型变量m_check1~m_check4判断各个变量的值; if(m_check1.GetCheck()==1) str+="10"; if(m_check2.GetCheck()==1) str+="9"; if(m_check3.GetCheck()==1) str+="8"; if(m_check4.GetCheck()==1) str+="7"; MessageBox(str); 第三种方式:利用GetDlgItem()函数 CButton *pBtn1=(CButton*)GetDlgItem(IDC_CHECK1); CButton *pBtn3=(CButton*)GetDlgItem(IDC_CHECK2); CButton *pBtn3=(CButton*)GetDlgItem(IDC_CHECK3); CButton *pBtn4=(CButton*)GetDlgItem(IDC_CHECK4); if(pBtn1->GetCheck()==1) str+="10"; if(pBtn2->GetCheck()==1) str+="9"; if(pBtn3->GetCheck()==1) str+="8"; if(pBtn4->GetCheck()==1) str+="7"; 第四种方法:利用IsDlgButtonChecked()函数 if(BST_CHECKED == IsDlgButtonChecked( IDC_CHECK1 )) str+="10"; if(BST_CHECKED == IsDlgButtonChecked( IDC_CHECK2 )) str+="9"; if(BST_CHECKED == IsDlgButtonChecked( IDC_CHECK3 )) str+="8"; if(BST_CHECKED == IsDlgButtonChecked( IDC_CHECK4 )) str+="7"; MessageBox(str); |
|