以编程方式选择MFC单选按钮可以通过以下方法实现:
可以通过CButton类的SetCheck()方法来选中或取消选中MFC单选按钮。该方法的原型如下:
void SetCheck(int nCheck);
其中,nCheck参数的值为1表示选中单选按钮,0表示取消选中单选按钮。
例如,以下代码可以选中ID为IDC_RADIO1的单选按钮:
CButton* pButton = (CButton*)GetDlgItem(IDC_RADIO1);
pButton->SetCheck(1);
也可以通过发送BM_SETCHECK消息来选中或取消选中MFC单选按钮。该消息的原型如下:
LRESULT BM_SETCHECK(int nCheck);
其中,nCheck参数的值为1表示选中单选按钮,0表示取消选中单选按钮。
例如,以下代码可以选中ID为IDC_RADIO1的单选按钮:
CButton* pButton = (CButton*)GetDlgItem(IDC_RADIO1);
pButton->SendMessage(BM_SETCHECK, 1);
需要注意的是,如果要同时取消选中其他单选按钮,需要在选中目标单选按钮之前先取消选中其他单选按钮。可以通过CButton类的GetButtonStyle()方法来获取当前单选按钮的状态,如果返回值为1,则表示该单选按钮已经被选中。
例如,以下代码可以选中ID为IDC_RADIO1的单选按钮,并取消选中其他单选按钮:
CButton* pButton1 = (CButton*)GetDlgItem(IDC_RADIO1);
CButton* pButton2 = (CButton*)GetDlgItem(IDC_RADIO2);
if(pButton1->GetCheck() == 1) {
pButton1->SetCheck(0);
}
else {
pButton1->SetCheck(1);
pButton2->SetCheck(0);
}
领取专属 10元无门槛券
手把手带您无忧上云