如果网页打不开。。这时里面的页面显示的是无法显示网页的页面我用webbrowser.busy只能判断是否下载完成

解决方案 »

  1.   

    WebBrowser的OnNavigateError事件中判断。
      

  2.   

    doc := IHTMLDocument2(Webbrowser1.Document);
       if(doc <> nil) then
       begin
         item := doc.body;
         if(item <> nil) then
           item.style.borderstyle:='none';
       end;
      //
      if item = nil    then就是说下载失败
      

  3.   

    试了楼上的方法。。不行啊。。当无法显示网页时。。item也有值的。。不为空。。
      

  4.   

    下载失败时,webbrowser会装入一个Blank页,测试页面内容是不是blank页就可以了。
      

  5.   

    检查header比较保险
    如果HTTP/1.0 400 Bad Request就over了
      

  6.   

    //
    试了楼上的方法。。不行啊。。当无法显示网页时。。item也有值的。。不为空。。
    //procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;
      const pDisp: IDispatch; var URL: OleVariant);
    begin
      Caption := '下载完毕';
    end;procedure TForm1.Button5Click(Sender: TObject);
    begin
      WebBrowser1.Navigate('http://chenyl0857.net');
    end;管你什么网站,有没有内容,能不能找到,只要完毕都会执行DocumentComplete。