如题,因为在转换一些数据时需要几十秒钟,怕用户会误认为是死机,所以想在处理数据时出现一个对话框,显示现在正在处理数据,啥按钮都没有,在数据处理完时自动隐藏。
如果能在这个对话框上显示一个进度条就更好了。

解决方案 »

  1.   

    用鼠标我也试过了,效果不好,而且在处理数据时在界面上乱点鼠标,容易出现“没有响应”,但是出现一个对话框就好多了,起码用户知道程序在干嘛。
    我现在用show试的,好象不管用。
    我在from1中处理数据,设了一个表单from2,用于显示“正在处理数据”,在处理数据时用from2.show 1,但是执行时,调用了from2后from1就不工作了。
    现在不知道怎么办好,有别的法子吗?
      

  2.   

    定义一个全局的布尔变量,True时表示正在执行数据处理,在每一个鼠标能触发的事件的首行都加一个判断,如果该变量是True,就退出过程,加之你把鼠标设置为沙漏形状,这样就不会有任何影响了。
      

  3.   

    一般用一个Label提示就行了.
    Label.caption="正在处理数据,请稍候……"
      

  4.   

    转换数据耗时的循环中加个语句
    DoEvents
    此外使用非模式窗体来做提示.
      

  5.   

    是循环处理的,但DoEvents会占用较高的CPU使用率。
      

  6.   

        Dim i As Long
        Dim sum As Long
        For i = 1 To 1000000
            If i Mod 100 Then
                
                DoEvents
            End If
        Next
      

  7.   

    肯定不能用 form2.show 1 啊!你试一下:
    form2.show false,form1