如何实现定时提醒?

lansefeng 2003-08-25 09:41:21
我想做一个这样的小程序,
把每天的时间计划存成表,在计划的时间到达的时候,能够自动用声音或者其他形式提醒,请问用什么方法来判断我所设定的时间是否到达
例如:时间计划 8:00 工作1
10:00 工作2
11:00 工作3
我希望程序能够在7:45提醒工作时间1到,以此类推
注:每天的工作时间计划都会有变动
请问,怎么实现好呢?
...全文
135 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
lansefeng 2003-08-27
  • 打赏
  • 举报
回复
各位大侠,有没有更多的例子,可以参考的啊?
lansefeng 2003-08-26
  • 打赏
  • 举报
回复
谢谢,我再试试
_xiao 2003-08-26
  • 打赏
  • 举报
回复
有什么不可以,这样做非常好呀
丁淇石头 2003-08-26
  • 打赏
  • 举报
回复
看不太明白你的代码,实际上在OnTimer中加入以下代码就可以
time_t t;
struct tm * clock;

time(&t);
clock = localtime(&t);

//假设8点要提示
if (clock->tm_hour == 8 && clock->tm_min == 0 && clock->tm_sec < 30)
{
if (m_Flag == FALSE)
{
//在这儿写提示代码
m_Flag = TRUE;
}
}
else
{
m_Flag = FALSE;
}

//用m_Flag控制只提示一次,另外提示尽量不要用AfxMessageBox,他会将程序“拦截”住。
lansefeng 2003-08-26
  • 打赏
  • 举报
回复
3rd up
lansefeng 2003-08-25
  • 打赏
  • 举报
回复
我也想过用定时器,可是是不是很占用资源呢
丁淇石头 2003-08-25
  • 打赏
  • 举报
回复
设置一个定时器就可以,然后在OnTimer中判断是否提示
lansefeng 2003-08-25
  • 打赏
  • 举报
回复

谢谢
我想这样实现,可不可以
首先从数据库中读取当天的时间计划表,按时间排序,
然后
while ( no events)
{
Sleep ( next events time - current time)
AfxMessageBox("It's the time for evnet");
events.MoveNext
}
不知道这样做合不合理,是否还有更好的方法
丁淇石头 2003-08-25
  • 打赏
  • 举报
回复
也可以使用线程。
丁淇石头 2003-08-25
  • 打赏
  • 举报
回复
不用担心,定时器占用的资源很少。
lansefeng 2003-08-25
  • 打赏
  • 举报
回复
再up下
lansefeng 2003-08-25
  • 打赏
  • 举报
回复
自己up下,请高手再帮忙分析下

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧