Entwickler-Ecke

Internet / Netzwerk - In For-Schleife überprüfen, ob Seite geladen wurde


N1m3 - Sa 05.11.05 00:08
Titel: In For-Schleife überprüfen, ob Seite geladen wurde
Hi

Wie schon im Titel steht, möchte ich eine Aktion erst ausführen wenn die Webseite im Webbrowser1 fertig geladen wurde. Die Aktion spielt sich in einer längeren Schlaufe ab.

Wie kann ich jetzt prüfen ob die Seite geladen wurden, und falls, wie weiter?


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
procedure TForm1.Button1Click(Sender: TObject);
var
n: Integer;
begin
// test -> if complete then -> start
for n:=0 to Memo1.Lines.Count do begin
  if WebBrowser1.ReadyState < READYSTATE_COMPLETE then
  // jetzt aktion ausführen
  // aber hier kommt immer die fehlermeldung: 
  // Access violation at adress ... 
 end;
end;



Gibt es auch noch eine andere Möglichkeit zu testen ob Seite fertig geladen wurde?
hab auch mit OnDocumentComplete versucht, leider auch ohne Erfolg, da es zu wenig Parameter anscheinend hatte:


Delphi-Quelltext
1:
if Webbroser1.OnDocumentComplete = 1 then                    



Gruss


GTA-Place - Sa 05.11.05 00:29

Für was verwendest du eine For-Schleife und ein Memo?


Delete - Sa 05.11.05 01:06

for n:= 0 to Memo1.Lines.Count - 1 do muss es heißen!


Lannes - Sa 05.11.05 01:54

Hallo,

falls der richtige Hinweis von Luckie nicht Dein Problem beseitigt,
könnte Dir eventuell das weiterhelfen, dort gab es ein ähnliches(gleiches) Problem:
...alles schon probiert, einzelt geht es, aber wie gesagt sobalt der code inner schleife ist kann ich ... [http://www.delphi-forum.de/viewtopic.php?p=257438#257438]


GTA-Place - Sa 05.11.05 09:51

user profile iconLuckie hat folgendes geschrieben:
for n:= 0 to Memo1.Lines.Count - 1 do muss es heißen!

Das Problem ist hier aber, dass ich gar nicht sehe ob er n nochmal verwendet oder ob er bloß ne Schleife haben will.


alzaimar - Sa 05.11.05 10:25

Der WebBrowser sagt Dir doch, wann das "Document complete" geladen wurde. Das 'OnDocumentComplete' ist ein Ereignis, das eintritt, wenn das Dokument komplett ist. Doppelklicke im Objektinspektor im Reiter 'Events' auf den Eintrag und schreibe dort den Code rein, der ausgeführt werden woll, wenn dieses Ereignis eintritt.