MFC中的Radio Button的使用问题
在MFC中使用多个RadioButton,并为第一个选择了Group属性,在单击确定时弹出所选单选按钮相应信息。共有四个RadioButton,他们的ID为:IDC_SP...
在MFC中使用多个Radio Button,并为第一个选择了Group属性,在单击确定时弹出所选单选按钮相应信息。
共有四个Radio Button ,他们的ID为:IDC_SPRING,IDC_SUMMER,IDC_AUTUMN,IDC_WINTER,
添加变量 BOOL m_radio;
在OnBnClickedOk()函数中添加
CString strMessage;
CString str;
UpdateData();
GetDlgItem(IDC_SPRING+m_radio)->GetWindowTextW(str);
//**************
strMessage=str;
AfxMessageBox(strMessage);
我不能理解上面 GetDlgItem(IDC_SPRING+m_radio)->GetWindowTextW(str);一句究竟是什么意思,请知道的朋友帮忙解释一下。 展开
共有四个Radio Button ,他们的ID为:IDC_SPRING,IDC_SUMMER,IDC_AUTUMN,IDC_WINTER,
添加变量 BOOL m_radio;
在OnBnClickedOk()函数中添加
CString strMessage;
CString str;
UpdateData();
GetDlgItem(IDC_SPRING+m_radio)->GetWindowTextW(str);
//**************
strMessage=str;
AfxMessageBox(strMessage);
我不能理解上面 GetDlgItem(IDC_SPRING+m_radio)->GetWindowTextW(str);一句究竟是什么意思,请知道的朋友帮忙解释一下。 展开
1个回答
展开全部
你打开resource.h,找到这4个radio的ID,是如下定义的:
#define IDC_SPRING 1003
#define IDC_SUMMER 1004
#define IDC_AUTUMN 1005
#define IDC_WINTER 1006
这4个ID的数值相差1,m_radio应该是关联radio的整型变量,当选中IDC_SPRING时,m_radio=0;选中IDC_SUMMER时,m_radio=1,依此类推,所以IDC_SPRING+m_radio所得的值就是当前选中的radio的ID值
GetDlgItem()用来获取相应ID的控件句柄,GetWindowTextW(str)将句柄所指向的控件标题赋给str,所以运行结果就是显示当前选中的radio的标题文字
#define IDC_SPRING 1003
#define IDC_SUMMER 1004
#define IDC_AUTUMN 1005
#define IDC_WINTER 1006
这4个ID的数值相差1,m_radio应该是关联radio的整型变量,当选中IDC_SPRING时,m_radio=0;选中IDC_SUMMER时,m_radio=1,依此类推,所以IDC_SPRING+m_radio所得的值就是当前选中的radio的ID值
GetDlgItem()用来获取相应ID的控件句柄,GetWindowTextW(str)将句柄所指向的控件标题赋给str,所以运行结果就是显示当前选中的radio的标题文字
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询