MFC中Radio按鈕所表示的内容如何在編輯框中顯示出來呢?
我總結了三種MFC中Radio按鈕顯示的方法 1.隻運用Radio按鈕的資源名IDC_RADIO int id=GetCheckedRadioButton(IDC_RADIO1,IDC_RADIO3);//得到點選radio的資源ID,注意這3個資源得連續
switch(id) { //用switch語句分别表示
case IDC_RADIO1:
m_sFruit="蘋果"; //m_sFruit是編輯框的變量名
break;
case IDC_RADIO2:
m_sFruit="桔子";
break;
case IDC_RADIO3:
m_sFruit="香蕉";
break;
default:
break;
}
UpdateData(FALSE); 2.運用Radio的資源名和一個變量名 為想分成一類的Radio設定一個組,并為這個組設定一個變量 UpdateData(TRUE);
CString str;
GetDlgItem(IDC_RADIO1+m_nRadio)->GetWindowText(str);
m_sFruit=str;
UpdateData(FALSE);
//m_nRadio是這組設定的變量,因為Radio的資源是連續的,是以加上一個整型變量名,GetDlgItem擷取被選擇到的Radio按鈕,并通過調用GetWindowText顯示在臨時變量str中。
3.運用Radio按鈕上每一個響應函數 分别為每一個Radio設定一個響應函數,這樣如果選擇這中一個Radio,則調用這個響應函數,把Radio所代表的内容在編輯框中顯示就可。
總結:上述三種方法均可把Radio按鈕上的内容在編輯框中得到顯示,第3種方法局限性:當點選按鈕就立即會在編輯框中顯示;第2種方法最簡潔,第1中方法當選擇過多時就會浪費時間了。