关于定时器问题

liuharris 2009-03-16 03:28:47
请问一下,我现在从文本文件中读一个具体的时间(年-月-日 时:分),把读出的时间与系统当前的时间作比

较,如果一致就播放音乐。我是设了定时器SetTimer(1,1000,NULL),在1秒读一次文本并与系统的时间作比较

,如果我把PlaySound(path,NULL,SND_FILENAME)放到OnTimer()函数中运行的话播放音乐时音乐是不停重复的

,也就是音乐还没播完一秒后又开始重播,原因是每1s调用一次PlaySound()。我现在想音乐只播放一次,而且

要找到与系统时间一致的那一刻起开始播放音乐,应该把PlaySound(path,NULL,SND_FILENAME)放到哪里。

注意:匹配时时间只精确到分钟
...全文
95 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yicc1998 2009-04-23
  • 打赏
  • 举报
回复
楼主解决了吗?解决了的话给个参考呀,我也是遇到同样的问题呀
rdsnow 2009-03-18
  • 打赏
  • 举报
回复
设置一个flag,时间到了检测flag标志,如果未播放则播放,已经在播放了就什么也不做!
liuharris 2009-03-17
  • 打赏
  • 举报
回复
时间是经常变的,而且不只一个时间阿,不能像你这样设定Timer的
starytx 2009-03-16
  • 打赏
  • 举报
回复
你文本文件记录的时间在不停的变吗?如果不变的话,你没必要隔一秒就读一下和当前时间比较阿。你可以先读取文件里的时间,然后减去当前时间,得到一个差,然后设置一个间隔为这个差值的Timer,到了时间就播放一下,然后关掉Timer
fishion 2009-03-16
  • 打赏
  • 举报
回复
自定义一个消息,当时间到了就sendmessage与killtimer
liuharris 2009-03-16
  • 打赏
  • 举报
回复
与系统时间作比较除了设定一个定时器还有没有别的方法,我是新手基础不是很好,方便详细告诉我吗?谢谢
另外,播放音乐不一定要放到timer里的,只要可以实现上述功能就好
liuharris 2009-03-16
  • 打赏
  • 举报
回复
与系统时间作比较除了设定一个定时器还有没有别的方法,我是新手基础不是很好,方便详细告诉我吗?谢谢
另外,播放音乐不一定要放到timer里的,只要可以实现上述功能就好
yajyjy 2009-03-16
  • 打赏
  • 举报
回复
如果你一定要放在timer里,建议再加一个成员变量开关;
或者你匹配时间精确秒,读出来的时间把秒清0......;

方法很多

16,466

社区成员

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

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

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