我目前正在尝试在加载时查看通过 Res://imagename 加载的图像。在带有 res 处理程序的 Chromium 中,我已经能够通过 ResourceResponse 事件做到这一点,但是,据我所知,TWebBrowser 没有类似的功能。
我已经能够锁定 OnDocumentComplete 函数,并且能够实现一种非常低效的方式,一旦创建了整个 HTML 文档就可以查看它......
procedure TNotesBrowser.TBrowserDocumentComplete(ASender: TObject; const pDisp: IDispatch; var URL: OleVariant);
var
HTMLDocument2: IHTMLDocument2;
i : Integer;
Item : IHTMLElement;
ImageUrl : string;
begin
HTMLDocument2 := ((FBrowser as TWebBrowser).Document AS IHTMLDocument2);
if HTMLDocument2 <> nil then
begin
for i := 0 to HTMLDocument2.images.length -1 do
begin
Item := HTMLDocument2.images.item(i, 'null') As IHTMLElement;
ImageUrl:=item.getAttribute('src',0);
if ContainsText(ImageURL,'ImageName') then
if Assigned(FCCICONLoaded) then
{ Trigger Event }
FCCICONLoaded(self);
end;
end;
end;
然而,这是一个相当漫长的过程。那么有没有其他人发现一个类似于 Chromium 的 OnResourceResponse() 的事件来避免查看文档?