RadioButton分组 :将本组第一个风格加Group;
多分组情况下:
各RadioButton需要设置Tab顺序。某一个RadioButton设置Group属性后,其Tab次序后的与其一个组。遇到另一个设置Group属性的RadioButton,则开始新的组。设置Tab顺序快捷键Ctrl+D(菜单Format->Tab Order)。
int GetCheckedRadioButton(int nIDFirstButton, int nIDLastButton);
参数为起始RadioButton和结束RadioButton的ID值;并且必须属于同一个Group,返回的是当前选中的RadioButton的ID值;
将CButton与RadioButton绑定:
CButton mRadioButton;
mRadioButton = (CButton *)this->GetDlgItem(IDC_RADIO1);
mRadioButton->GetCheck()返回1则此RadioButton被选中,返回0没选中。
一个Radio Button设置Group后,在对话框资源上右键Radio Button,选中Control variable选项
可以为整个Group添加CButton对象,其他Group成员不能再添加CButton对象
不选中Control variable选项时,可以为Group属性Buttton以及其他Group成员添加int,float,char等数据类型变量
非Group属性Button可以为选择要加入的Group:Control ID列表中选择已设置Group属性的Button
1选中Control variable: Category 有Control、 value两种情况
1.1value
只能加BOOL型
如:添加m_bRaido6;
头文件自动添加BOOL m_bRaido6;
源文件自动添加
, m_bRaido6(FALSE)(构造函数处)
DDX_Radio(pDX, IDC_RADIO6, m_bRaido6);(DoDataExchange中)
1.2control
只能加CButton型
如:添加m_Radio,
头文件自动添加CButton m_Radio;
源文件自动添加DDX_Control(pDX, IDC_RADIO1, m_Radio);(DoDataExchange中)
2不选中Control variable:
添加通常数据类型(此时添加的变量与Radio Button无关?)
例:通过一个变量获取当前选中的是哪个radio button:
添加三个radio button 分别是 Radio6,Radio7,Radio8
Tab order 分别为 6,7,8
设置Radio为Group属性
右键Radio6添加变量:选中Control variable,Category选value,名字填写 m_bRadio6
在三个Radio Button的单机响应函数中添加
printf("&&&&&&&m_bRadio6=%d/n",m_bRaido6);
UpdateData();
printf("&&&&&&&m_bRadio6=%d/n",m_bRaido6);
:::第一句是输出点击Radio Button按钮前 m_bRadio6的值
:::第二句将当前Radio Button按钮对应的状态值赋值到m_bRadio6
:::第三句,再次输出m_bRadio6的值
点击Radio6 输出:
&&&&&&&m_bRadio6=0//添加m_bRadio6变量后VS2005默认赋值FALSE
&&&&&&&m_bRadio6=0//点击后m_bRadio6=0,(选中当前Group第一个)
点击Radio7输出:
&&&&&&&m_bRadio6=0//上次是第一个
&&&&&&&m_bRadio6=1//点击后选中第二个
点击Radio8输出:
&&&&&&&m_bRadio6=1
&&&&&&&m_bRadio6=2//点击后选中第三个
(今天才注意到是: typedef int BOOL; 开始还郁闷,怎么相关变量只能设置为BOOL型)
------------------------------------------<<----百度--------------------
UpdateData(TRUE) ——刷新控件的值到对应的变量。(外部输入值交给内部变量) 即:控件的值—>变量。 UpdateData(FALSE) —— 拷贝变量值到控件显示。(变量的最终运算结果值交给外部输出显示) 即:变量值—>控件显示。
---------------------------------------------------百度---------->>------