Главная страница
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.055 c
14-1083693907
Шишкин Илья
2004-05-04 22:05
2004.05.23
Проверьте ссылку


14-1083300561
iNew
2004-04-30 08:49
2004.05.23
forum.ru-board.com


1-1083958298
Sergix
2004-05-07 23:31
2004.05.23
Глюк с главной формой


3-1082961593
Andriy Tysh
2004-04-26 10:39
2004.05.23
CURSOR in Access?


7-1082164913
Ivanov
2004-04-17 05:21
2004.05.23
Время из системных часов