LEDBUTTON类简单描述及总结
来源:互联网 发布:激光设备软件开发 编辑:程序博客网 时间:2024/06/02 06:49
文件定义
...#include "LedButton.h"...class DemoDlg : public CDialog{ ...private: ... CLedButton m_ledCtrl;};
void CDemoDlg::DoDataExchange(CDataExchange* pDX){ ... DDX_Control(pDX, IDC_LED_CHECK, m_ledCtrl); ...}
2色设定,即2个状态(如亮或灭,红或蓝):
SetIcons(); //设置OFF及ON图标
m_ledCtrl.SetIcons(IDI_GRAY_ICON, IDI_YELLOW_ICON);
若需要改变图标大小,使用SetIcon() ,在亮或灭切换中使用大小图标效果不错!
m_ledCtrl.SetIcon(LED_BUTTON_STATE_OFF, IDI_GRAY_ICON, 14,14);m_ledCtrl.SetIcon(LED_BUTTON_STATE_ON, IDI_YELLOW_ICON, 14,14);
SetLedState() //完成LED颜色的设定,在每次想要改变LED颜色时
m_ledCtrl.SetLedState(LED_BUTTON_STATE_ON);
多色调用时,可以设定一个枚举类型,用来描述每种颜色的状态,方便调用,如:
enum EMyLedState { GRAY_LED_STATE = LED_BUTTON_STATE_ON, // Initial LedState GREEN_LED_STATE, YELLOW_LED_STATE, RED_LED_STATE, BLUE_LED_STATE, MY_LED_STATES_SENTINEL // Not to be used as a EMyLedState. };
初始化时需要设定LED的最大数量,即SetLedStateSNumber(),传递枚举成员的数量
... m_ledCtrl.SetLedStatesNumber(MY_LED_STATES_SENTINEL); m_ledCtrl.SetIcon(GRAY_LED_STATE, IDI_GRAY_ICON); m_ledCtrl.SetIcon(GREEN_LED_STATE, IDI_GREEN_ICON); m_ledCtrl.SetIcon(YELLOW_LED_STATE, IDI_YELLOW_ICON); m_ledCtrl.SetIcon(RED_LED_STATE, IDI_RED_ICON); m_ledCtrl.SetIcon(BLUE_LED_STATE, IDI_BLUE_ICON); ...
..
上面的LED在设定后就会一直处于某种状态,不改变,若要实现;LED灯不停的闪烁,则我们需要一个活动的LED按钮
我们可以使用SetLedActivityTimer() 函数,它会让你传递一个计时器的ID号和间隔的时间,当ID为非零时,则在每次调用 SetLedState()函数时,则会触发LedButton类中的一个内部计时器,它会设定LED灯状态到LED_BUTTON_STATE_OFF,当间隔时间到达时,则LED按钮关闭.
我们在设计不停闪烁状态时,可以将亮灯的状态放入我们写好的一个计时器中,则在每次循环时,都会触发亮灯状态,而熄灭的状态则有LedButton自行触发.
总结:
1.简单2种颜色切换显示,就使用SetIcon或setIcons及SetLedState来实现
2.2种以上颜色切换显示,使用SetLedStatesNumber函数,传递枚举成员数量及SetLedState实现
3.LED闪烁状态,使用SetLedActivityTimer,在SetLedState函数中会对所有非灭状态的LED,触发计时器,一旦LED熄灭,则计时器关闭.
- LEDBUTTON类简单描述及总结
- 框架简单描述总结
- Object类-----简单描述
- jvm内存简单描述及相关参数
- Spring-Ioc及DI简单描述
- jsp的主要特征,及简单描述
- 自定义viewgroup 及view--简单描述
- ViewPager的简单描述及使用
- 开篇-WTL头文件列表及简单描述
- 常用HTML标签的英文全称及简单描述
- HTML标签对应英文全称及简单描述
- salesforce DML和Database及rollback方法简单描述
- pom.xml配置文件中所有标签及作用简单描述
- 语义WEB 及 描述逻辑动态逻辑 总结
- 简单描述类加载机制(回顾)
- tomcat简单安装及总结
- 设置类标题及描述信息模板
- OSI模型简单描述
- 数据结构 复习笔记
- 通过注册表修改mac地址
- HDOJ 1106 排序
- Ubuntu system runlevel
- ASM管理和维护札记
- LEDBUTTON类简单描述及总结
- 利用doxygen生成说明文档(支持C、C++、Java、Objective-C和IDL语言,部分支持PHP、C#)
- Lazy Load, 延迟加载图片的 jQuery 插件
- 2013/06/19 笔试一算法题
- spring中bean的生命周期的问题
- Hibernate从入门到精通(三)Hibernate配置文件
- Unity3D的16个小疑问
- BOOL 和 bool 的区别
- 将不同纹理映射到不同面上nehe