將一組單選按鈕添加到對話框
選擇“工具箱”窗口中的單選按鈕 (RadioButton) 控件,並在對話框中單擊希望放置該控件的位置。
重複步驟 1 以添加所需的任意多個單選按鈕。確保組中單選按鈕的 Tab 鍵順序是連續的(有關更多信息,請參見更改控件的 Tab 鍵順序)。
在“屬性”窗口中,將 Tab 鍵順序中的第一個單選按鈕的 Group 屬性設置爲 True。例如
Radio1、Radio2、Radio3爲一組,Radio4、Radio5爲一組
設定Radio1屬性:Group,Tabstop,Auto
設定Radio2屬性:Tabstop,Auto
設定Radio3屬性:Tabstop,Auto
設定Radio4屬性:Group,Tabstop,Auto
設定Radio5屬性:Tabstop,Auto
VC2008 MFC創建單選按鈕組獲取單選按鈕組值 - IT心雪 - NET START HERE說明:
只有組中的第一個單選按鈕可將 Group 屬性設置爲True。如果有其他不屬於按鈕組的控件,則將組外的第一個控件的Group 屬性設置爲True。通過按 Ctrl + D 查看 Tab 鍵順序可以快速確定組外的第一個控件。
如何初始化單選按鈕,即默認一個單選按鈕
初始化第一個單選按選,即默認第一個單選按鈕
在此函數裏 CLotteryDlg::OnInitDialog()
CButton *pB;
pB=(CButton*)GetDlgItem(IDC_RADIO1);
pB->SetCheck(TRUE);
判斷被選中的單選框:
使用組框控件,這個組框,不是組合框,組框是 將多個單選按鈕圈起來,再將你想設爲默認按鈕的那個按鈕的 組 屬性選中,其它按鈕的 組 屬性取消。
這樣這些RADIO按鈕就成了一組可以實現在他們之間進行單選,這3個按鈕只有 組 屬性的可以映射一個變量,添加一個變量RadioSelect,其類型爲int,這個RadioSelect變量可以用來返回用戶選擇了哪個選項,0表示選擇 了第一個單選按鈕,1表示選擇了第二個單選按鈕,2表示選擇了第三個單選按鈕
switch(RadioSelect)
{
case 0:
::AfxMessageBox("選中第一個");break;
case 1:
::AfxMessageBox("選中第2個");break;
case 2:
::AfxMessageBox("選中第3個");break;
}
下面是第二種方法:
被分到一組裏的單選框是互斥的,不在一個組裏的單選框是互不影響的(組框裏的單選框只能一個被選中)
VC中建立基於對話框的類,在對話框控件中添加組框,在組框中放三個單選框,ID分別爲IDC_RADIO1,IDC_RADIO2,IDC_RADIO3.可以在對話框控件中添加一個Button控件,在 Button控件單擊命令響應中添加如下代碼:
UINT nSex=GetCheckedRadioButton(IDC_RADIO1,IDC_RADIO3);//參數分別爲第一個、最後一個單選框的ID號
switch(nSex)
{
case IDC_RADIO1:
::AfxMessageBox("選中第一個");break;
case IDC_RADIO2:
::AfxMessageBox("選中第2個");break;
case IDC_RADIO3:
::AfxMessageBox("選中第3個");break;
}