通过编写串口助手工具学习MFC过程

因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉。这次通过做一个串口助手再次熟悉一下MFC,并做了一下记录,以便方便以后查阅。做的过程中多是遇到问题直接百度和谷歌搜索来的,所以很多都是不求甚解,知其然不知其所以然。另外做此工具只是为了熟悉了解,许多功能还没有完善!(开发工具VS2008)

(五)添加CheckBox复选框

属性:Caption用于显示文本内容。

添加控件、修改属性ID和增加变量部分略,参见按按钮部分。

1、CheckBox的基本功能:

check1.GetCheck();

复选框用的最多的功能就是判断是否状态被选中。用鼠标选中时会在方框处打上勾。

CButton::GetCheck
int GetCheck( ) const;
返回值:
对于采用BS_AUTOCHECKBOX、BS_AUTORADIOBUTTON、BS_AUTO3STATE、BS_CHECKBOX、BS_RADIOBUTTON或BS_3STATE风格建立的按钮,返回值为下列之一:

含义

0

按钮处于未选中状态

1

按钮处于选中状态

2

按钮状态不定(仅当按钮风格为BS_3STATE或BS_AUTO3STATE时)如果按钮是其它风格,则返回0。

说明:本函数用于检测单选钮或复选框的选中状态。

CButton::SetCheck
void SetCheck( int nCheck );
参数:

nCheck

指定按钮控件的选中状态。可能的取值如下:

含义

0

把按钮设为未选中状态

1

把按钮设为选中状态

2

把按钮设为不确定状态。仅当按钮的风格是BS_3STATE或BS_AUTO3STATE时有效

说明:
本函数用于设置或者重置单选钮和复选框的状态。它对一般的按钮没有影响。

上面这两个函数可以看出,单选钮和复选框也被看成是按钮的一种。

(2)实现特殊功能:复选框实现 类似单选功能(可以不选或只能选择其中一项)

实现方法:选中一个复选框时,将其他的复选框设置为未选中的状态。

在资源视图中,双击对话框中的复选框即为创建点击消息类型OnBnClicked,将要实现这个功能的两个复选框都创建这两个消息类型和响应事件函数

//时间戳复选框 操作时本地时间复选框失能

void CserialtestDlg::OnBnClickedCheckTimestamp()

{

// TODO: 在此添加控件通知处理程序代码

if(m_ComboTimeStamp.GetCheck()) //判断当前状态是否被选中

{

//m_ComboLocalTime.EnableWindow(FALSE);  //使控件失能

m_ComboLocalTime.SetCheck(0); //表示设置复选框为“未选中”状态;

}

else

{

//m_ComboLocalTime.EnableWindow(TRUE);

}

}

//本地复选框 操作时时间戳复选框失能

void CserialtestDlg::OnBnClickedCheckLocaltime()

{

// TODO: 在此添加控件通知处理程序代码

if(m_ComboLocalTime.GetCheck())

{

//m_ComboTimeStamp.EnableWindow(FALSE); //使控件失能

m_ComboTimeStamp.SetCheck(0); //表示设置复选框为“未选中”状态;

}

else

{

//m_ComboTimeStamp.EnableWindow(TRUE);

}

}

实现方法中主要使用了GetCheck()和SetCheck()获取复选框状态和设置复选框状态函数两个函数。

通过编写串口助手工具学习MFC过程——(五)添加CheckBox复选框的更多相关文章

  1. 通过编写串口助手工具学习MFC过程——(十)UpdateData()用法和编辑框的赋值、取值

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  2. 通过编写串口助手工具学习MFC过程--(十一)弹出模态型对话框

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  3. 通过编写串口助手工具学习MFC过程——(九)自动识别串口的方法

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  4. 通过编写串口助手工具学习MFC过程——(八)遇到的一些问题

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  5. 通过编写串口助手工具学习MFC过程——(六)添加Edit编辑框控件

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  6. 通过编写串口助手工具学习MFC过程——(七)添加Tab Control控件

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  7. 通过编写串口助手工具学习MFC过程——(四)添加ComboBox组合框

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  8. 通过编写串口助手工具学习MFC过程——(三)Unicode字符集的宽字符和多字节字符转换

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  9. 通过编写串口助手工具学习MFC过程——(二)通过“打开串口”按钮了解基本操作

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

随机推荐

  1. 多线程——Java中继承Thread类与实现Runnable接口的区别

    线程我只写过继承Thread类的,后来知道java多线程有三种方式,今天首先比较一下常用的继承Thread类和实现Runnable接口的区别. 按着Ctrl键进入Thread之后,发现Thread类也 ...

  2. OI多项式 简单学习笔记

    咕咕咕 先开个坑(其实是存模板来了) 一些特别简单的前置东西qwq 复数的计算 复数相加:向量相加,复数相乘.复数相乘:模长相乘,旋转量相加(就是复平面坐标轴逆时针旋转的角度) (当然也可以直接使用c ...

  3. x-pack邮件报警功能

    1):修改elasticsearch.yml xpack.notification.email.account: work:   profile: standard   email_defaults: ...

  4. python中类的设计问题(一些高级问题探讨,函数重载,伪私有,工厂模式,类方法等)

    从这里再次体现了python语言强大的灵活性.某些在高级语言中看似不严谨需要尽量避免的地方在python中都是允许的. 比如: (1),异常可以用来处理错误 (2),方法,类也都可以视为对象. (3) ...

  5. react v16.12 源码阅读环境搭建

    搭建后的代码(Keep updated): https://github.com/lirongfei123/read-react 欢迎将源码阅读遇到的问题提到issue 环境搭建思路: 搭建一个web ...

  6. 哈夫曼(Huffman)树及其应用

    Huffman树又称最优树,是一类带权路径长度最短的树,带权路径长度为从该节点到树根之间的路径长度与节点上权值的成积. 那么如何构建一个Huffman树呢?就需要Huffman算法 1.利用给定的n个 ...

  7. Python-Django WebAPi基本使用方法

    目的 利用django搭建一个WebApi,实现数据库表的增删查改. 数据传输基于Http协议,数据格式:JSON ORM方式进行数据库表的CRUD(增删查改) 开发步骤 使用pycharm专业版搭建 ...

  8. zabbix监控惠普打印机

    http://www.ttlsa.com/zabbix/zabbix-monitor-hp-printer/

  9. 思科端口聚合的命令是channel-group

    锐捷设备的端口聚合命令是: int range f0/1-2 port-group 1 --------------------- == 思科设备的端口聚合 是: int range f0/1-2 c ...

  10. 阶段3 1.Mybatis_05.使用Mybatis完成CRUD_8 Mybatis中的返回值深入-调整实体类属性解决增和改方法的报错

    如果实体类和数据库表内的字段没有保持一致 修改了属性子弹. 重新生成getter和setter还有toString方法 测试类里面,相关set的方法就都会报错. 只需要修改为最新的set方法就可以了. ...