
/* 程序功能:带定时闹铃时钟 */
/*---------------------------------------------------------------*/
#include <AT89X51.H> /*包含器件配置文件*/
#define uchar unsigned char
#define uint unsigned int
char DATA_7SEG[10]={0xC0,0xF9,0xA4,0xB0,0x99,
0x92,0x82,0xF8,0x80,0x90,}/*0~9的数码管段码*/
uchar hour=0,min=0,sec=0 /*时、分、秒单元清零*/
uchar deda=0 /*5mS计数单元清零*/
bit d_05s=0 /*0.5秒标志*/
uchar set=0 /*模式设定标志*/
uchar m=0
uchar flag=0 /*RAM掉电标志*/
void delay(uint k)/*延时?函数*/
void conv()/*走时单元转换*/
void disp() /*走时时间显示?函数*/
/*------------------------走时?函数部分 ----------------------*/
/*定时器T0 5mS初始化*/
void init_timer()
{
TMOD=0x01
为什么在OnTimer里面再调用SetTimer ???
//假设你点一个“开始计时”按钮后开始定时//在“开始计时”按钮响应函数中:
SetTimer(001,1000,NULL)
CString m_stime=_T("12:00:00") //您设定的时间
//在OnTimer函数中:
if(001==nIDEvent)
{
CTime time
CString strtime
time=CTime::GetCurrentTime()
strtime=time.Format(_T("%02d:%02d:%02d"),time.GetHour(),time.GetMinute(),time.GetSecond()) //获取当前时间并格式化到strtime中
if(m_stime==strtime) //判断当前时间是否和设定时间相等
{
MessageBox(m_stime,"时间到!",MB_OK)
}
}
这个其实还蛮容易的,你可以在OnInitialDialog里面加入时钟的界面代码(包括画一个时钟和三个表针),然后设置一个定时器,定时器周期设置成一秒,然后在定时器函数里面让时钟走动就可以了欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)