189 8069 5689

关于vb.net高精度延时的信息

VB.NET的几种延时方法

Imports System.Threading

创新互联建站是一家集网站建设,十堰郧阳企业网站建设,十堰郧阳品牌网站建设,网站定制,十堰郧阳网站建设报价,网络营销,网络优化,十堰郧阳网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

Thread.Sleep(1000)’延迟1秒

2.PauseWait(1000)’延迟1秒

Public Sub PauseWait(ByVal HowLong As Long)

Dim tick As Long

tick = My.Computer.Clock.TickCount

Do

My.Application.DoEvents()

Loop Until tick + HowLong My.Computer.Clock.TickCount

End Sub

vb.net,如下代码,我想在MsgBox("A")和MsgBox("B")之间延时3秒(两个msgbox要在同一个Sub)

Private Sub Button1_Click()

MsgBox("A")

Threading.Thread.Sleep(3000)

MsgBox("B")

End Sub

如果暂停的3秒有影响,就给他开一个线程:

Private Sub Button1_Click()

Dim th As New Threading.Thread(AddressOf MsgBoxProc)

th.Start()

End Sub

Private Sub MsgBoxProc()

MsgBox("A")

Threading.Thread.Sleep(3000)

MsgBox("B")

End Sub

如何正确理解VB.NET延时函数

第一个for完成对delay_time参数的控制,即共循环多少次内部循环

第二个for(内部循环),完成对j从0到199的控制,共循环200次。

翻译成汇编就是:

(R0为传递参数)

DELAY:

MOV R1,#200

DJNZ R1,$

DJNZ R0,DELAY

RET

VB.NET有延时也会被卡死

Threading.Thread.Sleep(500)这句是线程停止等待的,在这500毫秒的时间里你的任何动作都是不响应的,理论上再SendKeys.Send(TextBox2.Text)这段时间内你可以动作,但是send是毫秒级完成的,你还没有来得及响应就进入了下一次的循环,所以跟卡死类似

解决方法:通过timer定时器延时


名称栏目:关于vb.net高精度延时的信息
网站链接:http://cdxtjz.cn/article/doipghj.html

其他资讯