MFC - 單選按鈕



單選按鈕是一個控制元件,顯示為一個圓圈內的小圓點。實際上,一個單選按鈕會與一個或多個其他單選按鈕一起出現,並作為一個組進行操作。

以下是單選按鈕控制元件的訊息對映列表:

訊息 對映條目 描述
BN_CLICKED ON_BN_CLICKED( <id>, <memberFxn> ) 當按鈕被點選時,框架會呼叫此成員函式。
BN_DISABLE ON_BN_DISABLE( <id>, <memberFxn> ) 當按鈕被停用時,框架會呼叫此成員函式。
BN_DOUBLECLICKED ON_BN_DOUBLECLICKED( <id>, <memberFxn> ) 當按鈕被雙擊時,框架會呼叫此成員函式。
BN_PAINT ON_BN_PAINT( <id>, <memberFxn> ) 當應用程式請求重繪按鈕時,框架會呼叫此成員函式。

讓我們透過建立一個新的基於 MFC 對話方塊的應用程式來了解單選按鈕的示例。

步驟 1 - 拖動一個組框和三個單選按鈕,並刪除靜態文字控制元件的標題。

Radio Button

步驟 2 - 為所有三個單選按鈕新增事件處理程式。

Radio Button

步驟 3 - 為靜態文字控制元件新增 Value 變數。

Radio Button

步驟 4 - 以下是三個事件處理程式的實現。

void CMFCRadioButtonDlg::OnBnClickedRadio1() {
   // TODO: Add your control notification handler code here
   m_strTextControl = _T("Radio Button 1 Clicked");
   UpdateData(FALSE);
}

void CMFCRadioButtonDlg::OnBnClickedRadio2() {
   // TODO: Add your control notification handler code here
   m_strTextControl = _T("Radio Button 2 Clicked");
   UpdateData(FALSE);
}

void CMFCRadioButtonDlg::OnBnClickedRadio3() {
   // TODO: Add your control notification handler code here
   m_strTextControl = _T("Radio Button 3 Clicked");
   UpdateData(FALSE);
}

步驟 5 - 當上述程式碼編譯並執行時,您將看到以下輸出。當您選擇任何單選按鈕時,訊息將顯示在靜態文字控制元件上。

Radio Button
mfc_windows_controls.htm
廣告