我调用别人的一个dll,里面的一个函数执行的时间很长,如死机一般,所以我想用一个进度条表示一下该函数的执行进程,但我发现这两者好像不好交互。请问如何实现? 
先谢谢了!

解决方案 »

  1.   

    你估计呀反正客户不懂。。
    你就慢慢的移动就是 如果后面觉得还很久 就往倒退 然后如果执行完了 就一下子移动到最末 嘿SendMessage(ProBar.Handle, PBM_STEPIT, 0, 0); // 向前移动一个步进
    SendMessage(ProBar.Handle, PBM_SETPOS, 0, 0); // 回到起始点
    SendMessage(ProBar.Handle, PBM_SETPOS, 100, 0); // 回到终止点 如果100是max..
    SendMessage(ProBar.Handle,PBM_SETSTEP,10,0); // 设置步进位10 
    很容易控制的。。
      

  2.   

    还有一个问题,如果如死机一般的话,用ProcessBar也没用,根本没响应.如果要用的话,用线程
      

  3.   

    probar1.max := 100;
    for i := 1 to 100 do
      probar1.Position := i;