[.NET] timer执行问题

楼主: maxding0430 (momo)   2016-04-06 16:43:55
各位大大好
小弟目前碰到一个问题想来请教一下
目前有一个Listbox1以及Button1
Listbox1有N个项目
按Button1后会依序执行Listbox1里的项目
每一个项目结束会传ok.ini
接到ok.ini后删除ok.ini在执行下一个项目
我想要加一个timer去dir(C:log/ok.ini)
每一秒去检查有没有收到
有收到就next i执行下一个项目
目前写法如下
Private ok As Boolean
timer内:
Dim MyFile As String
MyFile = Dir("C:\log\ok.ini")
If MyFile = "ok.ini" Then
ok = True
End If
If MyFile = "" Then
ok = False
End If
butter内:
Select Case s
......
......
......
End Select
Timer1.Enabled = True
If ok = True Then
Timer1.Enabled = False
My.Computer.FileSystem.DeleteFile("C:\log\ok.ini")
End If
Next i
目前不会等到ok=True才做下一项
而是连续做下去
请问要怎么改呢?
谢谢各位
作者: MOONRAKER (㊣牛鹤鳗毛人)   2016-04-06 18:07:00
这样你何必用timer 用sleep()不就好了
作者: garyl62327 (garyl62327)   2016-04-06 22:53:00
把timer.enabled =false 改到timer内 exit sub试试看不太懂你的意思
作者: MOONRAKER (㊣牛鹤鳗毛人)   2016-04-07 14:58:00
那就把for拆掉,写到timer里面不然用timer毫无意义
作者: evil2004 (忘却深渊)   2016-04-08 23:01:00
Button.Click启动Timer, Do ListBox放Timer里,做完Exit?认真讲 我真的看不懂你在说啥
作者: garyl62327 (garyl62327)   2016-04-09 20:13:00
我自己都看不懂他的意思了ww整理一下原po说想每一秒都检查却要开开关关timer让我百思不得其解至于他说不会等到ok=true 如果是只button那边的 有可能是timer内程式码还没跑完 把判断式丢到timer 做完离开 等下一次呼叫timer启动 这有可能是原p o想要的?

Links booklink

Contact Us: admin [ a t ] ucptt.com