马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 无符号整形 于 2016-11-12 10:14 编辑
还记得第3篇的小例子吗?就是那个设置Style那个。
从那儿可以看到,复选框是基于 CButton 的。
好了,进入正题。
我们先不急着实践,先了解一些重要概念。
一个复选框打了勾,那么这个复选框的 Check 状态就是 TRUE,否则为 FALSE
所以我们可以用 GetCheck 成员函数获取 Check 状态,如果是1就是打了勾,否则就是没打勾
还可以使用 SetCheck 成员函数强行设置 Check状态,以达到强行打勾或不打勾。
注:因为复选框实际上是基于 CButton的,所以变量类型也是 CButton(意味着成员函数和 CButton 的成员函数完全一样)。
实践时间
1.创建一个基于对话框的 mfc 工程,在工具箱拖一个 Check Box 控件到对话框的中间,然后把复选框的标题改成Test1(修改属性中的 Caption项)。
2.给Checkbox添加一个变量,便于获取 Check状态(建议把名称设为 m_checkbox)
3.拖一个按钮,并且给他添加事件处理程序。(目标:当用户按下这个按钮时,我们要检测刚才拖的 Checkbox 的 CHECK 状态,并且告诉用户复选框打勾了没有)
4.在事件处理函数中添加如下内容(带注释):if (m_checkbox1.GetCheck() == 1) //获取Check状态,如果打勾的话GetCheck会返回1,不打勾的话就会返回0
{
MessageBox(TEXT("Check Box打了勾"), TEXT("提示"), 0); //弹出提示框
}
else //如果 GetCheck返回了0,那就是没打勾
{
MessageBox(TEXT("Check Box没打勾"), TEXT("提示"), 0);
}
m_checkbox1.SetCheck(1); //设置Check状态,设置为1即为打勾,设置为0为取消打勾。这里即为让CheckBox打勾
5.编译并且运行,最终结果:
是不是很激动呢~ |