比如说:我有一段程序是将多表中生成视图的数据读入datagrid中,由于查询的条件以及表记录多。所以一般很慢(当然根据服务器的距离与机器本身的快慢有关)
我的目的:想通过进度条来分析这组数据被读出时的状态。
-----如果各位有自的代码也可以贴出来。必给多分!

解决方案 »

  1.   

    是访问数据库的比较慢,还是逐条写如datagrid比较慢
    如果是后者,你可以用进度条显示出来private function showData()
       dim lngCount as long
       
       dim i as long
       lngcount=rs.recordcount
       while not rs.eof()
               processbar1.value=(i/lngcount)*100
               '显示
               rs.movenext
       wend
    end function如果是前者 ,那么首先在查询分析器中优化sql语句
    在显示时插入doevents
    读取结束后 ,timer1.enable=false
                 processbar1.value=0
    sub timer_time()
         
         processbar1.value=(processbar1.value+1 ) mod 100 '重复显示,表示正在处理
    end sub 
      

  2.   

    我的目的是,从sql语句执行到读入网格整个过程,所花的总时间。也就是进度要求显示的状态。谢谢各位!
      

  3.   

    没有办法实现的。
    我在这种情况下不用进度条,而是用一个象windows启动时显示的那一个循环滚动条来显示。
      

  4.   

    dim i as long
       lngcount=rs.recordcount
       while not rs.eof()
               processbar1.value=int(i/lngcount)*100//这样好一些
               '显示
               rs.movenext
       wend
    不过我在这里问一下怎么设计那个进度条的进度块的大小呀默认的是10%就增加一个块我要它变成1%就增加一个块怎么设计呀. 谢谢