假设您正在为旧的正在运行的Windows窗体应用程序添加一个功能,现在整个应用程序在一个线程中运行,而且应用程序非常庞大并且有很多表单,因此您无法将其折射为在多线程中运行,现在应用程序gui冻结每次你做一个过程,有没有办法有一个指示,它的加载或进行中冻结?没有改变整个软件设计来支持线程等?
顺便说一句,我不希望它停止冻结它的确定冻结我只是想让它表明它做了什么!
任何想法都会受到赞赏,谢谢...
答案 0 :(得分:1)
如果应用程序是使用.net 2.0或更高版本编写的,请参阅BackGroundWorker组件。
答案 1 :(得分:1)
您可以在开始长时间运行操作后将表单的Cursor
属性设置为Cursors.WaitCursor
,并在完成后将其重置为Cursors.Default
。当您的操作执行时,您可以调用Application.DoEvents()
,但如果其他事件同时触发,则可能会导致副作用。