📄 timesetup.cpp
字号:
#include "ClockApp.h"
#include "TimeSetup.h"
CTimeSetup::CTimeSetup() : CXSetup(5)
{
#ifdef WIN32
m_hour = m_min = m_sec = 0;
#endif
}
CTimeSetup::~CTimeSetup()
{
}
//时钟跳动了16分之一秒
void CTimeSetup::OnTick()
{
if(CClockApp::clockApp->GetCurrentFunc() == this){
memset(&led, 0, sizeof(led));
if(!m_updated) LoadOldValue();
//时
if(m_hour > 9) led.hour1 = DataLed[m_hour / 10];
led.hour2 = DataLed[m_hour % 10];
//分
led.min1 = DataLed[m_min / 10];
led.min2 = DataLed[m_min % 10];
//秒
led.sec1 = DataLed[m_sec / 10];
led.sec2 = DataLed[m_sec % 10];
led.f_time = 1;
led.dot =1;
CClockApp::clockApp->Display(led);
}
}
void CTimeSetup::SetFlash()
{
memset(&led, 0, sizeof(led));
switch(m_current_setup){
case 1:
led.hour1 = 0x7f;
led.hour2 = 0x7f;
break;
case 2:
led.min1 = 0x7f;
break;
case 3:
led.min2 = 0x7f;
break;
case 4:
led.sec1 = 0x7f;
break;
case 5:
led.sec2 = 0x7f;
break;
}
CClockApp::clockApp->Flash(&led);
}
void CTimeSetup::LoadOldValue()
{
UCHAR temp;
CClockApp::clockApp->m_clock.GetTime(
temp, temp, temp, m_hour, m_min, m_sec
);
}
void CTimeSetup::SaveSetup()
{
UCHAR year, month, day, temp;
CClockApp::clockApp->m_clock.GetTime(year, month, day, temp, temp, temp);
CClockApp::clockApp->m_clock.SetTime(year, month, day, m_hour, m_min, m_sec);
}
UCHAR CTimeSetup::OnSet(UCHAR add)
{
UCHAR temp;
switch(m_current_setup){
case 1://小时
if(add){
if(m_hour >= 23) m_hour = 0;
else m_hour++;
}else{
if(!m_hour) m_hour = 23;
else m_hour--;
}
break;
case 2://分钟的十位
temp = m_min / 10;
m_min %= 10;
if(add){
if(temp >= 5) temp = 0;
else temp++;
}else{
if(!temp) temp = 5;
else temp--;
}
m_min += temp * 10;
break;
case 3://分钟的个位
temp = m_min % 10;
m_min -= temp;
if(add){
if(temp >= 9) temp = 0;
else temp++;
}else{
if(!temp) temp = 9;
else temp--;
}
m_min += temp;
break;
case 4://秒的十位
temp = m_sec / 10;
m_sec %= 10;
if(add){
if(temp >= 5) temp = 0;
else temp++;
}else{
if(!temp) temp = 5;
else temp--;
}
m_sec += temp * 10;
break;
case 5://秒的个位
temp = m_sec % 10;
m_sec -= temp;
if(add){
if(temp >= 9) temp = 0;
else temp++;
}else{
if(!temp) temp = 9;
else temp--;
}
m_sec += temp;
break;
}
return 1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -