Całkowite zaladowanie doc do Webbrowser

Odpowiedz Nowy wątek
2006-08-27 14:42
0

Jak sprawdzić w kodzi Delphi czy dokument HTMl został całkowicie załadowany do komponentu Webbrowser?

//w ListBox znajduja sie adresy stron WWW do zaladowania w komponencie WebBrowser1
procedure TForm1.Button4Click(Sender: TObject);
var
 i : Integer;
begin
 ListBox1.Items.Count; //pobiera ilosc wpisow w ListBox
 
 //laduje po koleji wszystkie strony do WebBrowser
 for i := 0 to ListBox1.Items.Count-1 do
  begin
   ComboBox1.Text := ListBox1.Items.Strings[i];
   WebBrowser1.Navigate(ListBox1.Items.Strings[i]);
   /*tutaj chcec sprawdzic czy strona zostala zaldowana calkowicie w Webbrowser; jesli tK TO WYKONAC
kod np.: pobrac tresc strony!!
   */
 
  end;
end;

...

Pozostało 580 znaków

2006-08-27 15:21
0
mobMan napisał(a)

Jak sprawdzić w kodzi Delphi czy dokument HTMl został całkowicie załadowany do komponentu Webbrowser?

 
//w ListBox znajduja sie adresy stron WWW do zaladowania w komponencie WebBrowser1
procedure TForm1.Button4Click(Sender: TObject);
var
i : Integer;
begin
ListBox1.Items.Count; //pobiera ilosc wpisow w ListBox

//laduje po kolei wszystkie strony do WebBrowser
for i := 0 to ListBox1.Items.Count-1 do
begin
ComboBox1.Text := ListBox1.Items.Strings[i];
WebBrowser1.Navigate(ListBox1.Items.Strings[i]);
/tutaj chcec sprawdzic czy strona zostala zaldowana calkowicie w Webbrowser; jesli tK TO WYKONAC
kod np.: pobrac tresc strony!!
/

end;
end;

var wsio:boolean;

procedure TForm1.WebBrowser1DocumentComplete(ASender: TObject;
const pDisp: IDispatch; var URL: OleVariant);
begin
wsio:=true;
end;

procedure TForm1.Button4Click(Sender: TObject);
var
i : Integer;
begin
ListBox1.Items.Count; //pobiera ilosc wpisow w ListBox

//laduje po kolei wszystkie strony do WebBrowser
for i := 0 to ListBox1.Items.Count-1 do
begin
ComboBox1.Text := ListBox1.Items.Strings[i];
WebBrowser1.Navigate(ListBox1.Items.Strings[i]);
if wsio = true then
schowmessage('strona jest załadowana')
else
schowmessage('strona nie jest zaladowana');
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
wsio:=false;
end;


Pozostało 580 znaków

2006-08-27 15:50
0

Pomysł fajny ale efekt jest inny od porządanego. Pętla przeskakuje po wsyztskich adresach z ListBox1 i próbuje je załadować nie czekając na wsio = true! tak, że cały czas wsio jest ustawione na fals!

...
 
   ComboBox1.Text := ListBox1.Items.Strings[i];
   WebBrowser1.Navigate(ListBox1.Items.Strings[i]);
 
   Repeat
    Memo1.Lines.Add('as');
   Until wsio = false;
 
   if wsio = true then
    Memo1.Lines.Add('Strona zaladowana...')
   else
    Memo1.Lines.Add('Strona nie zaladowana...');
   end;
...

wstawiłem nawet taki kod ale nic to nie daje!


...

Pozostało 580 znaków

2006-08-27 18:11
ŁF
0

było i to bardzo niedawno. używajcie wyszukiwarki! http://4programmers.net/Forum/321861


Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0