![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
IHTMLWindow.document [D6, Win2k]
RuberoiD © (2002-10-03 13:05:00)Такая проблема:
procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
s : string;
ov : OleVariant;
iDoc : IHTMLDocument2;
iDisp : IDispatch;
iFrames2 : IHTMLFramesCollection2;
iWindow2 : IHTMLWindow2;
iFrameDoc : IHTMLDocument2;
begin
iDoc:=Form1.Browser1.ControlInterface.Document as IHTMLDocument2;
iFrames2:=iDoc.frames as IHTMLFramesCollection2;
for i:=1 to iFrames2.length do
begin
ov:=i-1;
iDisp:=iFrames2.item(ov);
iDisp.QueryInterface(IHTMLWindow2,iWindow2);
iWindow2.document.QueryInterface(IHTMLDocument2,iFrameDoc);
{ВЫДАЕТ ОШИБКУ "НЕТ ДОСТУПА"}
s:=iFrameDoc.title;
end;
end;
заранее благодарен
RuberoiD (2002-10-04 08:46:00) [1]Спасобо!
int64 (2002-10-04 00:43:00) [2]Просто альтернативный вариант.
procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
s : string;
iDoc : IHTMLDocument2;
iFrames2 : IHTMLElementCollection;
IFrame: HTMLFrameElement;
iFrameDoc : IHTMLDocument2;
begin
iDoc:=Form1.Browser1.Document as IHTMLDocument2;
iFrames2:=IHTMLElementCollection(HTMLDocument(iDoc).All.Tags("FRAME"));
for i:=0 to iFrames2.length-1 do
begin
IFrame:= iFrames2.item(i,varEmpty) as HTMLFrameElement;
iFrameDoc:=IFrame.document as IHTMLDocument2;
{далее работаем с документом
каждого фрейма}
end;
end;