定时提醒的代码如何实现?

connonrocket 2003-05-29 05:21:04

我们要做个闹钟或者定时提醒类似的东西,一般的方法就是,使用个timer,然后代码每次进去检测当前时间和设定时间的关系,如果大于等于,则操作一段代码实现某个功能。这个时间如果要求精确到秒,如果不麻烦的话,最开始设置Timer的Interval就是1000,或者可以设置成最大(65535,其实到不了这个数的),然后当时间快到的时候,将这个数改小,但很少有这样做的。我想问一下,是否有什么方法,可以设置了某些东西,然后,到设定时间的时候,触发一个时间,然后实现要实现的功能。也就是说,把用timer查询的过程,让系统去做。如何实现?
...全文
359 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
coolice823 2003-06-05
  • 打赏
  • 举报
回复
用time控件
Maconel 2003-06-05
  • 打赏
  • 举报
回复
洪根先生好像总是很忙呀,每次都不能亲自回答问题,不知从那里粘来一篇篇的长篇大论,看得我眼都花了,虽然你的这些东西都很不错,但我还是希望你能简单扼要的把问题所需要的关键写出来,希望高手们也都照顾一下我们这些刚入门的初学者。谢谢了。
connonrocket 2003-06-05
  • 打赏
  • 举报
回复
假如一个程序用了七八个Timer会影响速度呢?
qingming81 2003-06-05
  • 打赏
  • 举报
回复
如果楼主想去掉Timer控件,可以让自己的程序在开机时自动启动并在后台运行,然后随时获取系统时间来作判断,如果是需要的时间则显示提示。
showflow 2003-06-05
  • 打赏
  • 举报
回复

timer 控件是可以做到,但是它的優先級低,很難做到精確定位。
用API setTimer()無能從速度還是效率都比TIMER控件強
qingming81 2003-06-05
  • 打赏
  • 举报
回复
Timer完全没有必要使用多个(除非是为了好看或方便)。使用一个足以代替多个,其它的使用变量来控制就行。
qingming81 2003-06-05
  • 打赏
  • 举报
回复
Timer不会占用太多内存,For的循环太快,可能让机子动不了吧。
starsoulxp 2003-06-05
  • 打赏
  • 举报
回复
用timer控件和变量time来控制
pianyun 2003-06-05
  • 打赏
  • 举报
回复
我是新手,问一个傻问题,timer 和 for 循环语句都能实现循环,它们的区别在哪?
pandengzhe 2003-05-30
  • 打赏
  • 举报
回复
除了服务、计划任务,好像没有别的方法了。
connonrocket 2003-05-30
  • 打赏
  • 举报
回复
我这样的程序已经做出来了,就是要把这个Timer去掉,哪位可以帮我?
  • 打赏
  • 举报
回复
对呀!就用Timer
Water Lee 2003-05-30
  • 打赏
  • 举报
回复
我觉得用 Timer 挺好的嘛,干嘛一定要掉呢,只要功能实现了,用什么又何仿。
我做的定时器就用的 Timer ,用了快半年了,也没发现 Timer 会影响系统速度。
lihonggen0 2003-05-29
  • 打赏
  • 举报
回复

用VB设计一个定时闹钟程序




使用win98的人一定知道其中有一个“计划任务"的应用程序,它能够到指定时间便开始工作。不要认为它很神秘,其实用VB来设计这样一个程序是非常容易的事,以下是一个简单的VB闹钟程序,可供各位使用VB的朋友参考,如有何不适之处,请多指点!
  首先在form1上建立三个命令按钮,分别为command1(打开预启动的文件);command2(设定时间的按钮);第三个command3(即可启动)按钮可有可无;一个label1用来显示你预打开的文件名的路径;一个lbltime用来显示现在的时间;还有一个common dialog,它在工程菜单的部件中,你可把它加到工具箱中再开始使用;关于对话框你不必自己建,只要从应用程序向导中添加即可;一个timer,它的interval=500。
  其次在form1的属性中设置为:startupposition=2-centerscreen和maxbutton=false;label1的属性中设置为:alignment=2-center。
  外观大致是如图所示:
  下面我们开始编程:
  Option Explicit
  Dim AlarmTime
  '申明变量
  ---------
  Private Sub Command1_Click()
  Call dialog
  '调用dialog子程序
  End Sub
  --------
  Private Sub Command2_Click()
   AlarmTime = InputBox(“请输入你想设定的时间,例如(19:12:00)", “小闹钟")
   If AlarmTime = “" Then Exit Sub
  If Not IsDate(AlarmTime) Then
  MsgBox “你所输入的不是时间格式,请重试!", ,“Wrong"
  Else
  AlarmTime = Cdate(AlarmTime)
  End If
  '判断输入的是否可转换成time格式
  'isdate函数是判断输入的是否可转换成date格式
  End Sub
  --------------
  Private Sub Command3_Click()
  Call deng
  '调用deng子程序
  End Sub
  ---------------
  Private Sub Form_Click()
  frmAbout.Show
  '显示关于对话框
  End Sub
  -------------
  Private Sub Form_Load()
   Command3.Enabled = 0
   AlarmTime = “"
  '初始化时command3为不可用的
  End Sub
  ---------------
  Private Sub Form_Resize()
   If WindowState = 1 Then
   mintime
   else
   caption=“小闹钟"
   End If
  '如果窗口被最小化,则调用mintime程序
  End Sub
  ---------------
  Private Sub mintime()
  Caption = Format(Time, “long Time")
  '使用长时间格式来显示时间
  End Sub
  ---------------
  Private Sub Timer1_Timer()
  If lblTime.Caption <> CStr(Time) Then
  lblTime.Caption = Time
  End If
  '显示时间每秒钟的变化
  If Time >= AlarmTime Then
  Call deng
  End If
  '判断如果现在的时间超过了设定的时间,则调用deng子程序
  If WindowState = 1 Then
  If Minute(Cdate(Caption)) <> Minute(Time) Then
  mintime
  End If
  End If
  '最小化时显示时间每分钟的变化
  End Sub
  -------------
  Sub dialog()
  CommonDialog1.Flags = cdlCFBoth
  CommonDialog1.ShowOpen
  Label1.Caption = CommonDialog1.filename
  If Label1 <> “" Then
  Command3.Enabled = -1
  Else
  Exit Sub
  End If
  '把打开的文件名给于label1
  '如果label1不为空时,则command3即可用
  End Sub
  --------------
  Sub deng()
  Dim ss
  ss = Shell(Label1.Caption, 1)
  End
  '启动指定的文件,并且结束小闹钟程序
  End Sub
  最后在about对话框中要提的是:在form_load中app.title表示你的应用程序的名字;app.major、minor、revision是关于应用程序的版本信息;lblDescription.Caption 用于对本程序的一些说明描述之类的话;lblDisclaimer.Caption用于版权信息或警告等。
  好了,至此我们已完成了一个简单的VB程序的编写,希望你能设计出更好的闹钟程序来!
  以上在windows98,中文VB5.0企业版中通过。



 


of123 2003-05-29
  • 打赏
  • 举报
回复
windows有计划任务呀!
lihonggen0 2003-05-29
  • 打赏
  • 举报
回复
把用timer查询的过程,让系统去做。如何实现?


这样的功能,写一个windows服务,不过用VB写很麻烦

一般情况还是用TIMER实现定时提醒

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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