运行循环时可访问的程序

时间:2015-10-02 08:48:43

标签: vb.net loops runtime

我想运行一个循环(Do,For ....)但我希望程序即使在该循环运行时也可以访问。我的意思是,我希望程序运行循环,但在运行循环时,能够单击表单中的任何内容或重新定位表单。

3 个答案:

答案 0 :(得分:1)

虽然很多人会说这是坏事,邪恶和丑陋,但这会帮助你解决问题:

https://msdn.microsoft.com/de-de/library/system.windows.forms.application.doevents(v=vs.110).aspx

Application.DoEvents

另一个链接(解释说,DoEvents不是邪恶的):

http://blog.codinghorror.com/is-doevents-evil/

但是,有一些障碍:如果你有一个长时间运行的循环(假设对一个处理大量记录的数据库的查询)并且你想要这个,你应该在运行你的同时禁用所有“危险”按钮循环,即禁用所有其他,然后“取消”。当然,取消按钮只应在循环开始时启用,并在结束时禁用。

答案 1 :(得分:1)

Dim th as new System.Threading.Thread(sub()
                                         'Run Loop here
                                      End Sub)
th.Start()

我经常使用上面的代码:D

答案 2 :(得分:0)

对于这类问题,你应该看看多线程和异步编程。