Entwickler-Ecke

Internet / Netzwerk - Webbrowser Seite laden warten bis vollständig geladen


oern - Fr 28.10.05 19:33
Titel: Webbrowser Seite laden warten bis vollständig geladen
Hi, gibt es eine möglichkeit ein einem TWebbrowser eine Seite zuladen und dann warten bis diese Seite fertig geladen wurde ?

thx für eure Antworten


Hansi@OMG - So 30.10.05 09:28

einfallen würde mir da nur ein umweg über die indykomponente idhttp
Da gibts ein OnLoad.
Wenn eine Seite angefordert wird lädst du sie einfach mit der idhttp kompo runter und onload lädst du sie lokal von der Platte in den Webbrowser.


Holgerwa - So 30.10.05 10:25

Hallo,

im Event OnDocumentComplete des TWebBrowsers machst Du das hier ein:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure WebBrowser1.DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant);
var CurWebBrowser: IWebBrowser;
    TopWebBrowser: IWebBrowser;
begin
  CurWebBrowser := pDisp as IWebBrowser;
  TopWebBrowser := TWebBrowser (Sender).DefaultInterface;
  if CurWebBrowser = TopWebBrowser then
    ShowMessage ('Fertig geladen');
end;

Die Bedingung ist erst dann erfüllt, wenn sämtliche Teile im WebBrowser geladen sind.

Holger


oern - Di 01.11.05 23:25

Hey Danke es funktioniert


snoopyonline - Sa 12.11.05 13:33

Es gab zwar schon ne funktionierende Antwort aber hier ist noch ne Alternative:

webbrowser1.navigate('htt://www.delphi-forum.de');
while WebBrowser1.ReadyState <> READYSTATE_COMPLETE do application.processmessages;
//und jetzt geht weiter