具體代碼如下:
void CTest4Dlg::OnOK()
{
// TODO: Add extra validation here
CString str,strCtrl;
int i;
str = "您的年級:";
UINT nID1 = GetCheckedRadioButton(IDC_RADIO1,IDC_RADIO3);
GetDlgItemText(nID1,strCtrl);
str = str + strCtrl;
str = str + "\n 您喜歡的科目:";
UINT nID2[4] = {IDC_CHECK1,IDC_CHECK2,IDC_CHECK3,IDC_CHECK4};
CButton *ptn;
for(i = 0; i < 4; i++){
ptn = (CButton *)GetDlgItem(nID2[i]);
if(1 == ptn->GetCheck()){
ptn->GetWindowText(strCtrl);
str = str + strCtrl;
str = str + " ";
}
}
MessageBox(str);
// CDialog::OnOK();
}
/**************************************************************總結(jié):**************************************************************
1.首先,對于這些控件,需要初始化一下,RadioButton和CheckBox都需要,其中,初始化的作用就是避免未知的行為,還有有些情況下,
需要設(shè)置默認(rèn)的選擇框,此時就是初始化的作用了,那么這樣就是對于OnInitDialog的應(yīng)用了!
2.其次,對于控件的操作,很簡單,獲得各個控件的信息,具體就是是否被選中的信息了。
對于RadioButton,用函數(shù) UINT nID1 = GetCheckedRadioButton(IDC_RADIO1,IDC_RADIO3);返回選中的那個ID值,因為是只能一次選擇一個的
RadioButton,所以也就只能得到一個ID,然后得到指定ID的內(nèi)容,前面說到了,GetWindowText即可,設(shè)置內(nèi)容的話,SetWindowText即可。
當(dāng)然,本題里面用的時GetDlgItemText(nID,str)也可以,將指定ID的控件內(nèi)容放在str中,也沒有問題。
3.一直ID,或者控件的指針。前面用到過,就是修改Caption的時候,GetDlgItem函數(shù),作用就是返回一個指針指向該控件,然后你就可以
SetWindowText來設(shè)置內(nèi)容,或者GetDlgItemText來實現(xiàn)等等。。
4.檢查控件CheckBox是否被選擇的話需要用的時GetChecked函數(shù),這樣得到那個值判斷,1表示選中,0表示未選中。
OK,目前就這么多了。
****************************************************************************************************************************/
上面的來說,具體的某些函數(shù)功能相似,以后要常常使用才是!
posted on 2010-02-04 17:14
deercoder 閱讀(780)
評論(0) 編輯 收藏 引用