大家是怎么处理进度等待窗体的?
首先
1、进度等待窗体置顶
2、主窗体只读(这个比较罗嗦,没想到怎么弄,呵呵)
3、主窗体、进度窗体信息交互.......

解决方案 »

  1.   

    看看人家做的Eclipse,做得挺好吧
      

  2.   

    我是这样的:
    1、进度等待窗体置顶    //这个肯定
    2、主窗体只读  //这个不一定,有时候可以允许取消,主窗体上可能有取消按钮
    3、主窗体、进度窗体信息交互...  //进度窗体开放几个方法用于刷新进度,主窗体在处理的时候,每走一步刷一次进度
    4、一般用backgroundworker后台处理
    5、取消时,进度条显示回滚效果,就是进度--
      

  3.   

    //打开提示窗口:        
    SYStemForm.MessageForm msf = new SYStemForm.MessageForm("请稍候,系统正在测试进度提示信息!");
    msf.Show();
    Application.DoEvents(); 
      //下面脚本假设为执行任务:
      //在下面写执行任务语句
        {  
           .......
        }//完成后关闭提示窗口
    msf.Close();
      

  4.   

    窗体间用事件交互比较直观...假如"进度窗体"有一个"进度"事件, 在"主窗体"当中调用"进度窗体"时, 使用如下代码:进度窗体 demo = new 进度窗体();demo.进度 += new 委托(处理方法);demo.ShowDialog();然后在"进度窗体"的操作中触发事件:if(this.进度 != null) this.进度(this, [进度信息]);if(进度 == 100)
    {
        //执行其它操作或关闭窗体...
    }
      

  5.   

    触发事件前请加上: Application.DoEvents();
      

  6.   

    使用BackgroundWorker之后汇报进度的东西可以做的很简单,但是始终感觉这样的效果有限,不如像IE和Firefox一样拿个圆圈转一转来得简单。
      

  7.   

    BackgroundWorker 就可以实现,复杂一些的就是多线程乐,其实没有那个必要,系统最主要的是功能
      

  8.   

    http://topic.csdn.net/u/20080123/10/db014a63-8917-4a86-8dfb-53a1af57f65e.html完工呵呵~~