Visual C++ 6.0编写的一个大屏七段LED数码时钟,纯代码绘制七段笔画,使用定时函数读取系统时间,再以七段数码管的形式显示在屏幕上,字体颜色可变,背景颜色可调节。
完整源码:
LEDClock.zip
(6.54 MB, 售价: 3 工控币)
部分源码:完整源码见附件
- /绘画数码管分,通过ADD Member Function...添加
- void CDigitalClock::DrawMinute()
- {
- int nLeft=m_nXmargin+3*m_nWidth+m_nSpace;
- if (m_nMinute<10)
- {
- DrawSingleNumber(0,nLeft);
- nLeft+=m_nWidth+m_nSpace;
- DrawSingleNumber(m_nMinute,nLeft);
- }
- else
- {
- TCHAR c[10]={0};
- _itoa(m_nMinute,c,10);
- int num1=c[0]-48;
- int num2=c[1]-48;
- DrawSingleNumber(num1,nLeft);
- nLeft+=m_nWidth+m_nSpace;
- DrawSingleNumber(num2,nLeft);
- }
- nLeft+=m_nWidth;
- Draw2Dot(nLeft);
- }
- //绘画数码管秒,通过ADD Member Function...添加
- void CDigitalClock::DrawSecond()
- {
- int nLeft=m_nXmargin+6*m_nWidth+2*m_nSpace;
- if (m_nSecond<10)
- {
- DrawSingleNumber(0,nLeft);
- // nLeft+=(int)(1.4*m_nWidth);
- nLeft+=m_nWidth+m_nSpace;
- DrawSingleNumber(m_nSecond,nLeft);
- }
- else
- {
- TCHAR *c=new TCHAR[10];
- _itoa(m_nSecond,c,10);
- int num1=c[0]-48;
- int num2=c[1]-48;
- DrawSingleNumber(num1,nLeft);
- nLeft+=m_nWidth+m_nSpace;
- DrawSingleNumber(num2,nLeft);
- }
- }
- //绘画数码管时,通过ADD Member Function...添加
- void CDigitalClock::DrawHour()
- {
- int nLeft=m_nXmargin;
- if (m_nHour<10)
- {
- DrawSingleNumber(0,nLeft);
- nLeft+=m_nWidth+m_nSpace;
- DrawSingleNumber(m_nHour,nLeft);
- }
- else
- {
- TCHAR *c=new TCHAR[10];
- _itoa(m_nHour,c,10);
- int num1=c[0]-48;
- int num2=c[1]-48;
- DrawSingleNumber(num1,nLeft);
- nLeft+=m_nWidth+m_nSpace;
- DrawSingleNumber(num2,nLeft);
- }
- nLeft+=m_nWidth;
- Draw2Dot(nLeft);
- }
复制代码
|
|