我试图创建一个复选框,在单击时暂停当前功能。这是我的代码设置方式 -
Public Function Wait()
LogOutput("Application paused.")
Do Until waitBox.Checked = False
'Task.Delay(1000)
My.Application.DoEvents()
Loop
LogOutput("Application unpaused.")
Return Nothing
End Function
Public Function Thing()
For Each i In x
If waitBox.Checked Then
Wait()
Else
DoStuff()
End If
Loop
Return Nothing
End Function
正如你所看到的,我已经尝试了#34; Task.Delay"以及" DoEvents(),但问题是GUI在函数运行时被锁定,因此用户根本无法单击暂停。
我怎样才能解决这个问题?
提前致谢。
答案 0 :(得分:2)
您需要为此创建一个新线程,因此GUI未锁定: https://msdn.microsoft.com/en-us/library/system.threading.thread(v=vs.110).aspx