MFC单选按钮的使用

将一组单选按钮添加到对话框
选择“工具箱”窗口中的单选按钮 (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;
 }

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值