VS2010/MFC之按钮编程实例
使用MFC实现如下图的 网站选择并显示的功能

2、在Group Box“网站类型”中加入三个Radio Button,Caption分别设为“门户”、“论坛”和“博客”,ID分别设为IDC_PORTAL_RADIO、IDC_FORUM_RADIO和IDC_BLOG_RADIO。在Group Box“网站”中加入六个Check Box,Caption分别设为“科比”、“新浪”、“天涯论坛”、“韩寒博客”、“网易”和“凤凰网论坛”,ID分别设为IDC_CHECK1、IDC_CHECK2、IDC_CHECK3、IDC_CHECK4、IDC_CHECK5和IDC_CHECK6。

4、在两个Group Box下面,添加一个静态文本框和一个编辑框。静态文本框的Caption设为“选择的网站:”。编辑框的ID设为IDC_WEBSITE_SEL_EDIT,属性Read Only改为True,使此编辑框为只读状态,不允许用户编辑。

添加代码
1、在“门户”按钮里面添加如下代码// 如果选择了“门户”单选按钮,则激活复选框“新浪”和“网易”,其他复选框禁用并非选中InitAllCheckBoxStatus();m_check2.EnableWindow(TRUE);m_check5.EnableWindow(TRUE);

3、在“博客”按钮里面添加如下代码// 如果选择了“博客”单选按钮,则激活复选框“鸡啄米”和“韩寒博客”,其他复选框禁用并非选中InitAllCheckBoxStatus();m_check1.EnableWindow(TRUE);m_check4.EnableWindow(TRUE);

5、声明上面的函数,在h文件里面添加下面的变量public: void InitAllCheckBoxStatus();

2、点击“确定”后,将选探怙鲔译择的网站名字显示到编辑框中,那么需要修改“确定”按钮CString strWebsiteSel; // 选择的网站// 若选中“恙栊分崴鸡啄米”则将其加入结果字符串if (1 == m_check1.GetCheck()){strWebsiteSel += _T("鸡啄米 ");}// 若选中“新浪”则将其加入结果字符串if (1 == m_check2.GetCheck()){strWebsiteSel += _T("新浪 ");}// 若选中“天涯论坛”则将其加入结果字符串if (1 == m_check3.GetCheck()){strWebsiteSel += _T("天涯论坛 ");}// 若选中“韩寒博客”则将其加入结果字符串if (1 == m_check4.GetCheck()){strWebsiteSel += _T("韩寒博客 ");}// 若选中“网易”则将其加入结果字符串if (1 == m_check5.GetCheck()){strWebsiteSel += _T("网易 ");}// 若选中“凤凰网论坛”则将其加入结果字符串if (1 == m_check6.GetCheck()){strWebsiteSel += _T("凤凰网论坛 ");}// 将结果字符串显示于“选择的网站”后的编辑框中SetDlgItemText(IDC_WEBSITE_SEL_EDIT, strWebsiteSel);// 为了避免点“确定”后对话框退出,将OnOk注掉//CDialogEx::OnOK();
