本帖最后由 lostmoon 于 2010-02-09 11:48:40 编辑

解决方案 »

  1.   

     Application.ProcessMessages;
      

  2.   

    这个问题要自己解决; 问题就在下面的循环中,好好看看VCL的源码吧!       WebBrowser1.Navigate(Edit3.Text);
          repeat
            Application.ProcessMessages;
          until (not webbrowser1.Busy);
      

  3.   

    Application.ProcessMessages;
    不建议用这个,会导致很多莫名其妙的问题
      

  4.   

    Application.ProcessMessages的问题,这个函数会暂时放弃CPU指令
    建议换成sleep或者timer
      

  5.   

    弄个标志位吧
    m_closestatus:Boolean;
    while not adoquery1.eof do     begin
          if m_closestatus=True then
            break;     
          Application.ProcessMessages;
          Edit3.Text := string(ADOQuery1.FieldByName('URL').value);
           WebBrowser1.Navigate(Edit3.Text);
          repeat
            Application.ProcessMessages;
          until (not webbrowser1.Busy);    //打开相应网站后,执行这里      adoquery1.next;
        end;