Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.23;
Скачать: CL | DM;

Вниз

компонент twebbrouser   Найти похожие ветки 

 
Max_   (2004-03-31 17:23) [0]

Как можно отследить завершение загрузки страницы в webbrowser


 
VMcL ©   (2004-03-31 17:43) [1]

OnDocumentComplete
OnNavigateComplete2

?


 
Max_   (2004-03-31 17:50) [2]

ondocumentcomplete, onnavigationcomplete, ondownloadcomplete для страничек с фрэймами срабатывают раньше чем завершается вся загрузка
нужно что-то ещё


 
int64   (2004-03-31 18:06) [3]

function IsWBComplete(WB: IWebbrowser2): boolean;
var
 OleContainer: IOleContainer;
 enum: IEnumUnknown;
 TempUnk: IUnknown;
 Fetched: PLongint;
 FrameLength, FrameNo: integer;
begin
Result:= True;
With WB do
 if (ReadyState = READYSTATE_COMPLETE) and (Assigned(document)) then
    begin
     OleContainer := Document as IOleContainer;
     FrameLength:=(Document as IHTMLDocument2).frames.length;
      for FrameNo:=0 to FrameLength-1 do
       begin
        Fetched := nil;
        OleContainer.EnumObjects(OLECONTF_EMBEDDINGS, Enum);
        Enum.Skip(FrameNo);
        Enum.Next(1, TempUnk, Fetched);
        Result := IsWBComplete(TempUnk as IWebbrowser2);
        if Result = False then break;
       end;
    end else
  Result:= False
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
WebBrowser1.Navigate("c:\temp\2\2.htm");
while not IsWBComplete(WebBrowser1.ControlInterface) do
 Application.ProcessMessages;
ShowMessage("WebBrowser1 is complete");
end;


 
easy ©   (2004-04-01 00:15) [4]

procedure TForm1.Button1Click(Sender: TObject);
begin
 WebBrowser1.Navigate("about:blank");
 while WebBrowser1.ReadyState < READYSTATE_LOADED do
   Application.ProcessMessages;
 showmessage(WebBrowser1.OleObject.document.location);
end;


 
int64   (2004-04-01 09:30) [5]

easy ©   (01.04.04 00:15) [4]
То же что и OnDownloadComplete?


 
Max_   (2004-04-01 10:44) [6]

int64   (01.04.04 09:30) [5]
вариант easy в моём случае отлично работает а ondownloadcomplete срабатывает несколько раз в течение загрузки


 
int64   (2004-04-01 10:59) [7]

Такой вариант просто пропускает загрузку вложенных фреймов.
Он мониторит только главный документ.
Сообщение выскакивает раньше, чем все фреймы загрузятся.


 
nikkie ©   (2004-04-01 15:15) [8]

>вариант easy в моём случае отлично работает
вот это удивительно, документация описывает статусы следующим образом.

READYSTATE_UNINITIALIZED  Default initialization state.
READYSTATE_LOADING  Object is currently loading its properties.
READYSTATE_LOADED  Object has been initialized.
READYSTATE_INTERACTIVE  Object is interactive, but not all of its data is available.
READYSTATE_COMPLETE  Object has received all of its data.

логично было бы предположить, что READYSTATE_LOADED возникает до READYSTATE_COMPLETE, а когда статус установился в READYSTATE_COMPLETE, то он больше не меняется до следующей навигации. а DownloadComplete и есть извещение о том, что достигнут этот статус.

DownloadComplete
This method of the DWebBrowserEvents interface notifies an application that a document has reached the READYSTATE_COMPLETE state.



Страницы: 1 вся ветка

Текущий архив: 2004.05.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.056 c
14-1083442276
RealRascal
2004-05-02 00:11
2004.05.23
Придумываение замысловатых паролей.


1-1083727892
DrinkMan
2004-05-05 07:31
2004.05.23
toolbar for IE.


9-1073465597
mad0max
2004-01-07 11:53
2004.05.23
GLScene - Дырка :)


14-1083674325
****
2004-05-04 16:38
2004.05.23
Вот думаю ,думаю и никак не придумаю : что означает слово "ИМХО"?


3-1083058475
vas
2004-04-27 13:34
2004.05.23
firebird