我想要那样,按下“按钮”,然后完成当前正在做的事情。 首先,我按下一个按钮进行一些计算,它完成3到4分钟,我希望按钮可以结束,仍然程序还没有完成他的工作。我该怎么办?
答案 0 :(得分:0)
使用线程(纯线程,BackgroundWorker或其他任何东西)
启动按钮仅启动线程并返回GUI控件,
得到中间结果你需要一些同步
并在它完成之前结束线程。
答案 1 :(得分:0)
假设您编写了一个重复自己的函数,并且您希望该函数停止正在执行的操作...
你可以为你的“buton”编写代码,它会将布尔值设置为true。
私有_MustTheFunctionStop为boolean = false
将此布尔值设置为类中的全局字段,这样您的函数也可以访问布尔值。
单击按钮时,将布尔值设置为TRUE。
然后在你的函数中,你需要循环你的代码
a do while应该做的伎俩
> public function SomeCalculations > > do while MustTheFunctionStop = false > > /your code.../
结束功能
答案 2 :(得分:0)
使用BackgroundWorker和SupportsCancellation
在工作中检查CancellationPending
如果工作没有循环那么就没有好办法取消