Hallo Alle,
wie ich zuvor schonmal in einem anderen thread berichtete hat der Twebbrowser Probleme mit dem ondocumentcomplete-Ereignis, wenn es sich um eine Seite mit frames handelt.
Nun habe ich zum Glück einen workaround auf Swissdelphicenter gefunden, welcher wie folgt aussieht:
Code:
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;
Damit klappt das ganze hervorragend.
Allerdings stellt sich mir da trotzdem noch ein Problem:
Die erste geladene Seite triggert jetzt tatsächlich nurnoch einmal das ondocumentcomplete-Ereignis und das auch noch ganz am Ende, also fabelhaft, allerding ändert sich das sobald ich einen link klicke und somit einen frame neu lade, da wird das event dann plötzlich überhaupt nicht mehr getriggert. Kann mir da einer anhand des oben stehenden Codes weiterhelfen?
Danke!
Jan