每组的第一个单选按钮设置属性:Group,Tabstop,Auto;其余按钮设置属性Tabstop,Auto。
如:
Radio1、Radio2、Radio3为一组,Radio4、Radio5为一组
设定Radio1属性:Group,Tabstop,Auto
设定Radio2属性:Tabstop,Auto
设定Radio3属性:Tabstop,Auto
设定Radio4属性:Group,Tabstop,Auto
设定Radio5属性:Tabstop,Auto
二、用ClassWizard为单选控件定义变量,每组只能定义一个。如:m_Radio1、m_Radio4。
三、用ClassWizard生成各单选按钮的单击消息函数,并加入内容:
void CWEditView::OnRadio1()
{
m_Radio1 = 0; //第一个单选按钮被选中
}
void CWEditView::OnRadio2()
{
m_Radio1 = 1; //第二个单选按钮被选中
}
void CWEditView::OnRadio3()
{
m_Radio1 = 2; //第三个单选按钮被选中
}
void CWEditView::OnRadio4()
{
m_Radio4 = 0; //第四个单选按钮被选中
}
void CWEditView::OnRadio5()
{
m_Radio4 = 1; //第五个单选按钮被选中
}
当控件变量值为0时,它对应组的第一个单选按钮处于选中状态
if(m_Radio1 = 0)//第一组第一个按钮被选中
{
//第一个按钮被选中 第一组第一个按钮被选中应进行的操作
}
if(m_Radio1 = 1)//第一组第二个按钮被选中
{
//第二个按钮被选中 第一组第二个按钮被选中应进行的操作
}
if(m_Radio1 = 2)//第一组第三个按钮被选中
{
//第三个按钮被选中 第一组第三个按钮被选中应进行的操作
}
if(m_Radio4 = 0)//第二组第一个按钮被选中
{
//第四个按钮被选中 第二组第一个按钮被选中应进行的操作
}
if(m_Radio4 = 1)//第二组第二个按钮被选中
{
//第五个按钮被选中 第二组第二个按钮被选中应进行的操作
}
if判断语句也可以使用switch控制语句实现
switch (m_Radio1)
{
case 0:
//第一个按钮被选中 第一组第一个按钮被选中应进行的操作
break;
case 1:
//第二个按钮被选中 第一组第二个按钮被选中应进行的操作
break;
case 2:
//第三个按钮被选中 第一组第三个按钮被选中应进行的操作
break;
default:
//第一组三个按钮都没有被选中应进行的操作
}
switch (m_Radio4)
{
case 0:
//第四个按钮被选中 第二组第一个按钮被选中应进行的操作
break;
case 1:
//第五个按钮被选中 第二组第二个按钮被选中应进行的操作
break;
default:
//第二组两个按钮都没有被选中应进行的操作
}