Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Использовать событие OnDocumentComplete у TWebBrowser при наличии фреймов

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

{ 
 When loading a page based on different frames into webbrowser 
 control, "ONDocumentComplete" fires each time one of the frames 
 gets completed. How can I find out, when this last Point 
 is reached and get this final url? 
}

 { 
 Wenn eine Seite mit Frames in den Webbrowser geladen wird, wird 
 "OnDocumentComplete" jedesmal ausgelцst, wenn eine Frame fertig 
 geladen ist. 
 Ich benцtige bei aber ein Ereignis, nachdem alle 
 Frames geladen wurden. Aus der Hilfe geht hervor, dass dies mit dem Ereignis 
 OnDocumentComplete realisiert werden kann. 
}

 procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;
   const pDisp: IDispatch; var URL: OleVariant);
 var
   CurWebrowser: IWebBrowser;
   TopWebBrowser: IWebBrowser;
   Document: OleVariant;
   WindowName: string;
 begin
   CurWebrowser := pDisp as IWebBrowser;
   TopWebBrowser := (Sender as TWebBrowser).DefaultInterface;
   if CurWebrowser = TopWebBrowser then
     ShowMessage('Complete document was loaded')
   else
   begin
     Document := CurWebrowser.Document;
     WindowName := Document.ParentWindow.Name;
     ShowMessage(Format('Frame "%s" was loaded', [WindowName]));
   end;
 end;
Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay