MFC关于Radio按钮的操作

一、通过分组,使用编号来区别


1. 环境:VS2010

2. 分组

将radio1、radio2、radio3分为1组,radio4、radio5分为另一组;

方法:设置  radio1  的 属性:  group、tabstop、auto均为true

设置  radio2 的 属性: group设为false, tabstop、auto均为true

设置  radio3  的 属性:group设为false,  tabstop、auto均为true


设置  radio4  的 属性:  group、tabstop、auto均为true

设置  radio5  的 属性:  group设为false,tabstop、auto均为true


3.   按CTRL+D,保证同一组内的radio的tab序号是连续的;调整tab序号的方式是:鼠标点击数字,比如先点3,然后点7,则3和7会交换,即radio1变为7,radio5变为3;



4. 关联int型变量   注意:只需将group属性为true的radio1关联,radio2和radio3需关联;  同样,radio4需关联,radio5需关联



5. 第4步完成后,在窗体头文件中可以看到


构造函数:

 

默认第一个radio被选中,即radio1被选中


二、通过空间ID来设置是否选中

((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(TRUE);//选上
((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(FALSE);//不选上

((CButton *)GetDlgItem(IDC_RADIO1))->GetCheck();返回1表示选上,0表示没选上


三、通过控件子类化

关联一个congtrol型变量(子类化),好ctrl+W(即打开classwizard),点开 Member Variables,咦?怎么没有IDC_RADIO1这个ID?原来是没有分组。因为radio button通常都是成组使用的,在一组里面是互斥的。取消,回到对话框资源面板,右键Radio1查看属性把Group选上,那么,Radio1和 Radio2就是一组了(怎么知道他们是一组的?后面说)。此时,就可以为Radio1增加一congtrol型变量m_ctrlRadio1了。如下:
m_ctrlRadio1.SetCheck(TRUE);
同样可以使用GetCheck()获取状态。


文献来源:

        http://blog.chinaunix.net/uid-24517893-id-2181827.html 

        http://blog.csdn.net/c_cyoxi/article/details/23868979


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值