Форум: "Основная";
Текущий архив: 2005.10.02;
Скачать: [xml.tar.bz2];
ВнизTwebBowser access to frames and web-page loading time Найти похожие ветки
← →
joisy (2005-09-12 15:27) [0]Дорогие форумчане!
подскажите как
1.В компоненте TwebBowser (Delphi) получить доступ (скопировать ) содержимое определенного фрейма
2.Как определить загружена ли веб страница или еще загружается?
спасибо,
Jeyx
← →
Ihor Osov'yak © (2005-09-12 17:12) [1]2. ReadyState (должно быть равно 4)
Можно также ловить OnDocumentComplete
1. Пройтись по иерархическому списку фреймов.. На королевстве есть моя древняя статья, кажется, я там рассматривал тот вопрос. Называется "Использование функциональности IE", в "подземелье магов"
можно делать примерно так:type
TOneStepSearchCondForHtmlDocWithFrames = function(iDoc: IHtmlDocument2; addPrm: integer): boolean;
function FinderFirstCondForHtmlDocWithFrames(iDoc: IHtmlDocument2;
addPrm: integer;
aDoer: TOneStepSearchCondForHtmlDocWithFrames): boolean;
{ The procedure aDoer will be caused for each IHtmlDocument2, beginning
from main and finishing any level of frames
while aDoer will return false;
}
var
frames: IHTMLFramesCollection2;
i: integer;
ov1: OleVariant;
iDisp: IDispatch;
IWindow2: IHTMLWindow2;
begin
result := false;
if not assigned(aDoer) then
Exit;
result := aDoer(iDoc, addPrm);
if result then
Exit;
frames := iDoc.frames;
if not assigned(frames) then
exit;
if frames.length = 0 then
exit;
for i := 1 to frames.length do
begin
ov1 := i - 1;
try
iDisp := frames.item(ov1);
iDisp.QueryInterface(IHTMLWindow2, IWindow2);
if assigned(IWindow2) then
begin
result := false;
try
if assigned(IWindow2.document) then
result := FinderFirstCondForHtmlDocWithFrames(IWindow2.document, addPrm, aDoer);
except
end;
if result then
exit;
end;
except
end;
end;
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.10.02;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.004 c