LED 数码管 显示 类
/** ***************文件说明*************** /* 文件名: LedDisp.h 版本号: v1.0.3 (v20091031.00001) 功能: 显示七段数码管风格的数字、小数点、冒号及部分字母。 (此版本用到MFC的某些类,故只能用于MFC(如CString,若要用于其它框架请自行修改.),在vc6.0,vs2008下编译、运行通过.) 第一作者: Jef 日期: 20091031 电子邮件: dungeonsnd@126.com 地址: 中国/江苏 版权: 1.您可以修改及免费使用本程序,但把本程序或修改后程序用于商业用途前请先通知第一作者并得到作者的许可。 2.修改之后保留此文件开头处的文件说明信息并更改副版本号(如 v20090825.00001 改成 v20091002.00001 ), 并拷贝一份附上您的个人信息发送到上面的作者邮箱,作者负责在全面测试后发步您修改后的新版本。 3.您使用本程序而导致任何伤害以及经济损失,由过错方依法承担所有责任,一概与第一作者及合作单位无关。 4.如果您使用本程序则表示您已经同意此版本协议!否则请不要使用! 其它: 使用时应同时拥有此头文件的实现文件(LedDisp.cpp)! v1.0.1 (v20090825.00001) v1.0.2 (v20091026.00001) 1.增加Hide()方法 2.增加IsHide()方法 3.增加Disp(CDC* pdc,CRect DispRect,int iDigitsAmount,CString cs);方法 4.等 v1.0.3 (v20091031.00001) 1.增加多个小数点和冒号显示支持 2.增加GetLedFont()方法 3.修改了显示熄灭数码管的内部实现 4.等 File Name: ledDisp.h Version: v1.0.3 (v20091031.00001) First Author: Jef Date: 20091031 Function: Show the number in the style of the seven sections of numerical code tubes. (This version has used some classes of MFC,so it can be only used in MFC(Edit it if you use in other frames.).Correctly run on vc6.0 and vs2008.) Email: dungeonsnd@126.com Address: Jiangsu/China Copyright: 1.You can edit and use this program, but contact the first author AND get the licence before used in business. 2.Modify the subsidiary version after modify the code, and send a copy to the author's mailbox ,don't forget added your own information! Other: */ 2.说明及注意 a.支持 改变数码管亮时的颜色 灭时颜色 区域背景色,支持居左居中居右显示,支持细调显示的位置(SetFont();)及数码管粗细等细节. 支持距离左或右一定距离显示字符串(m_iDistaceToRight). 支持创建不定数量的自定义字体(LedFontID来表示已创建的不同字体,已经创建过的字体被再次创建时则改写这个字体). 支持默认参数(调用时可以依次不传递有默认值参数). b.显示的字符的宽度与高度不随窗口的大小变化而自动变化,故调用者应自行处理. c.内部不含自动重画功能,故调用者应自己处理窗口重绘时字符的重新显示. d.字符串内可同时含 ":"与"." ,但字符串左起第一个字符不能为":"或"." ,且不能连续两个小数点或冒号!! e.能显示的字符包括 0-9,a-f,A-F,".",":","-" f.如 bool Disp(CDC* pdc,CRect DispRect,CString cs,int iFontWidth,int iFontHeight); 用户应自己设置好 DispRect与iFontWidth iFontHeight 的大小关系. 如果iFontHeight大于DispRect.Height(),则超出DispRect区域显示字符. 但左右可能不会超出显示(用户可设置m_bShowWhenOverstepRect来控制是否显示). 调用者应自己保证使字符串能全部显示在DispRect中,否则超出部分可能不会显示!! g.当字符的宽度与数码管的每一段的宽度比例严重失调时,显示的字符会严重失真(如数码管每一段宽度为5个像素,而长度却也为5像素则显示效果将失真)! 一般情况下,iFontHeight=2*m_iFontWidth,m_dSegmentWidth远小于m_iFontWidth h. led.SetColor(RGB(0,200,0));等会改变类的字体属性,故之后调用显示时字体属性都会发生改变. 但创建新的字体时不会改变类的字体属性.
- 1
- 惠少爷2016-09-19非常不错的资源
- luyouly2013-03-06资源非常不错,顶!
- 粉丝: 36
- 资源: 32
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助