!!!倒记时问题!!!

cxydbylt 2005-08-07 05:17:42
写了一个自动执行任务的程序!当设置好的倒记时结束时,便自动执行预定任务!如果中间退出程序,当再次开启时继续倒记时(并非重新开始倒记时),请问这要如何实现呢?
!!!先谢了!!!
...全文
156 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
cxydbylt 2005-08-09
  • 打赏
  • 举报
回复
好了!谢谢大家!截帖了!!!
cxydbylt 2005-08-08
  • 打赏
  • 举报
回复
楼上的朋友,运行时提示‘75’“路径/文件访问错误”!
mycatlove 2005-08-08
  • 打赏
  • 举报
回复
楼主的程序如果非正常退出,要在下次启动的时候继续,那也行啊,你可以在每次减少时间的时候(每秒)都往注册表里写值,这样都不会漏了。

还有HKEY_CURRENT_USER\Software\VB and VBA Program Settings,这个项不管系统有没有,当你使用"SetSetting"函数的时候都会创建的。具体这个函数的用法请查阅MSDN!
这个是最方便的,没必要用INI文件。
cxydbylt 2005-08-08
  • 打赏
  • 举报
回复
明白楼上的方法了!我再试试!谢谢!

小的用GetSetting、SaveSetting也实现了,但只能放在
HKEY_CURRENT_USER\Software\VB and VBA Program Settings下面,
据说要放到别处需要其他API函数实现。

请问注册表中的HKEY_CURRENT_USER\Software\VB and VBA Program Settings项 ,
是系统自带的还是安装Visual Basic后才有的?如果是自带,哪些版本的Windows有呀?
baibai326 2005-08-08
  • 打赏
  • 举报
回复
接着 jxgzay所写

保存时用:
dim filename as String '文件名
open filename for output as #1
print #1,cs
close #filename
读数据时:
dim filename as String '文件名
open filename for input as #1
dim thenum as Integer
line input #1,thenum
cs=thenum
close #filename
就能接着计时了。

--------------------------------
给filename值啊,filename="c:\systimer.dll"
应该不会错啊~
byeshuang 2005-08-08
  • 打赏
  • 举报
回复
你就用写注册表的办法吧
cxydbylt 2005-08-08
  • 打赏
  • 举报
回复
没人理我了?wuwuwu^^^^^^
cxydbylt 2005-08-08
  • 打赏
  • 举报
回复
好象有些棘手了!
晴空十万里 2005-08-07
  • 打赏
  • 举报
回复
两个都错了,close #fn
应为close #filename
晴空十万里 2005-08-07
  • 打赏
  • 举报
回复
接着 jxgzay所写

保存时用:
dim filename as String '文件名
open filename for output as #1
print #1,cs
close #fn
读数据时:
dim filename as String '文件名
open filename for input as #1
dim thenum as Integer
line input #1,thenum
cs=thenum
close #fn
就能接着计时了。
mycatlove 2005-08-07
  • 打赏
  • 举报
回复
在程序退出的时候记录当前的剩余时间啊,然后在程序启动的时候读出。正如楼上所说的,注册表最方便:SetSetting和GetSetting,具体用法在MSDN里查一下就有了。
0uhuang 2005-08-07
  • 打赏
  • 举报
回复
Unload里保存本次倒计时的剩下的时间到某个文件或注册表,
Load里读取上次保存的时间,并接着run
cxydbylt 2005-08-07
  • 打赏
  • 举报
回复
继续记时具体要如何实现呢?代码?偶还是个菜鸟,请高手明笺!
VBDN 2005-08-07
  • 打赏
  • 举报
回复
如果你要保存程序的运行状态(比如一个断点续传的位置),以便下次程序启动时接着当前位置继续运行的话,你可以把这个状态(比如一个变量的值)保存到磁盘文件中,不过更简单的是,保存到注册表中,使用SetSetting语句;程序下次启动时使用GetSetting语句读注册表中相应数据就行了。
michael_zy 2005-08-07
  • 打赏
  • 举报
回复
很容易麻,你需要的就是保存一个标记和已经走过的时间~~~~
然后在程序启动时去读标记和时间而已。。。。。
可以用timer控件去保存标记~~~
cxydbylt 2005-08-07
  • 打赏
  • 举报
回复
楼上2位所说适用于非正常退出吗?
jxgzay 2005-08-07
  • 打赏
  • 举报
回复
'一个timer1,一个label1


Dim cs As Integer

Private Sub Form_Load()
cs = 0
Timer1.Interval = 1000
End Sub

Private Sub Timer1_Timer()
On Error Resume Next
cs = cs + 1
Label1.Caption = "到计时:" & Str(6 - cs)
If cs = 6 Then
MsgBox "时间到!"
Unload Me
End If

End Sub

cxydbylt 2005-08-07
  • 打赏
  • 举报
回复


TextBox、Temer、CommandButton各一个
Private Sub Command1_Click()
Timer1.Interval = Text1.Text
End Sub

Private Sub Timer1_Timer()
Print "Hello!!!"
Timer1.Interval = 0
End Sub
这是前半部分。
而后半部分,退出、重起后继续倒记时,就不会做了!

7,763

社区成员

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

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