8.5.2 使用复选框控件统计信息
在应用程序中经常会使用复选框来统计信息,因为复选框操作简单,用户只需勾选要选择的信息即可。首先调用GetCheck方法获得控件的选中状态。
语法格式如下:
然后调用GetWindowText函数获得复选框控件的显示信息。
例8.7 使用复选框控件统计信息。(实例位置:光盘\TM\sl\8\2)
步骤如下:
(1)创建一个基于对话框的应用程序,将对话框的Caption属性修改为"使用复选框控件统计 信息"。
(2)向对话框中添加2个静态文本控件、2个编辑框控件、2个群组框控件、8个复选框控件和1个按钮控件。
(3)在对话框的OnInitDialog函数中设置"语文"和"数学"两个复选框被选中。代码如下:
m_Chinese.EnableWindow(FALSE); //设置"语文"复选框不可用 m_Chinese.SetCheck(1); //设置"语文"复选框选中 m_Arith.EnableWindow(FALSE); //设置"数学"复选框不可用 m_Arith.SetCheck(1); //设置"数学"复选框选中 |
(4)处理"提交"按钮的单击事件,在该事件的处理函数中获得控件中的显示信息,并将获得的信息显示在消息框中。代码如下:
void CCountCheckDlg::OnButrefer() //"提交"按钮单击事件处理函数 { CString ID,Name; //声明字符串变量保存编辑框文本 GetDlgItem(IDC_EDIT1)->GetWindowText(ID); //获得学号 GetDlgItem(IDC_EDIT1)->GetWindowText(Name); //获得姓名 CString str,text; //声明字符串变量 str = "学号:" + ID + "姓名:" + Name + "\r\n"; //设置字符串 str += "必修科目:语文、数学\r\n选修科目:"; //设置字符串 for(int i=0;i<6;i++) //根据选修科目循环 { CButton* but = (CButton*)GetDlgItem(IDC_CHECK3+i); //设置指向复选框的指针 if(but->GetCheck()==1) //判断复选框是否选中 { but->GetWindowText(text); //获得复选框的显示信息 str += text + "、"; //设置字符串 } } str = str.Left(str.GetLength()-2); //去掉字符串末尾的顿号 MessageBox(str); //显示信息 }
|
运行结果如图8.14所示。
|
| 图8.14 使用复选框控件统计信息 |
【责任编辑:
夏书 TEL:(010)68476606】