Форум: "Начинающим";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];
ВнизДинамически создаваемый TWebBrowser событие OnDownloadComplete? Найти похожие ветки
← →
Johnnnnnn (2008-05-16 01:20) [0]Создаю:
var
web: array[1..100] of TWebBrowser;
begin
web[1]:=TWebBrowser.Create(nil);
Form1.InsertControl( web[1] );
web[1].OnDownloadComplete:=MyOnDownC;
web[1].Navigate("http://www.google.com");
end;
процедура для события:
procedure TForm1.MyOnDownC(Sender:Tobject);
var
s:string;
document:variant;
begin
document:=TWebBrowser(sender).Document as IHtmlDocument2;
s:=document.all.tags("body").item(0).innertext;
form1.Memo1.lines.add(s);
end;
выскакивает ошибка. Подправте что нетак плиз?
мастера delphi
← →
Германн © (2008-05-16 01:39) [1]
> выскакивает ошибка. Подправте что нетак плиз?
Если "выскакивает" ошибка, то нужно сказать какая ошибка и привести текст сообщения об ошибке. Только не говори, что "там что-то непонятное на английском языке". И когда она "выскакивает" при компиляции или при работе программы?
← →
Johnnnnnn (2008-05-16 14:47) [2]Думал просто что ситуация стандартная и многие сталкивались уже поетому ошибку непривел
Project xxxx raised exception class EAccessViolation with message "Access violation at address 004564C3 in module "1.exe" Read of address 00000000".
Ps.
Еыли етоет до вывести в кнопку
procedure TForm1.Button6Click(Sender: TObject);
var
s:string;
document:variant;
begin
document:=web[1].Document as IHtmlDocument2;
s:=document.all.tags("body").item(0).innertext;
form1.Memo1.lines.add(s);
end;
то все работает
← →
Сергей М. © (2008-05-16 15:03) [3]
> 004564C3
Меню Search -> Find Error .., вводишь это шаманское число и компилятор показывает тебе строчку кода, приведшего к этой ошибке.
Проект д.б. собран с опциями отладки и запущен из-под IDE.
← →
ANB (2008-05-16 15:28) [4]
> s:=document.all.tags("body").item(0).innertext;
Скорее всего здесь падает.
Не всегда по событию OnDownloadComplete объект документ уже есть.
Добавь проверку.
← →
Johnnnnnn (2008-05-16 15:32) [5]Да строчка кода то вот ета
s:=document.all.tags("body").item(0).innertext;
только че делать с ней непонятно
← →
Сергей М. © (2008-05-16 15:33) [6]
> Не всегда по событию OnDownloadComplete объект документ
> уже есть
Тогда падать должно строчкой выше, поскольку при AS происходит вызов метода QueryInterface у несуществующего интерфейсного объекта
← →
Johnnnnnn (2008-05-16 15:35) [7]I>
> Скорее всего здесь падает.
> Не всегда по событию OnDownloadComplete объект документ
> уже есть.
> Добавь проверку.
Да тоже про ето жумал наверное добавлю таймер и буду его запускать по OnDownloadComplete а он уже будет чтото делать с страницей
← →
Сергей М. © (2008-05-16 15:36) [8]
> че делать с ней непонятно
Справку читать.
Там сказано:
Note: Unlike the OnNavigateComplete2 event, OnDownloadComplete occurs even if the Web browser does not successfully navigate to an URL.
← →
ANB (2008-05-16 15:48) [9]Вот такая скотина этот протокол HTTP. :)
← →
Johnnnnnn (2008-05-16 15:50) [10]Агу ну я самого начала пытался сделать OnDocumentComplete выдавало Incompatible types:"Parameter lists differ" теперь вот тожесамоу выдает на OnNavigateComplete2 подскажите что опять нетак?
← →
Сергей М. © (2008-05-16 15:55) [11]
> что опять нетак?
Опять справку не читал)
Там же четко и внятно описан прототип метода-обработчика каждого из упомянутых событий
← →
Johnnnnnn (2008-05-16 15:57) [12]
> Опять справку не читал)
>
> Там же четко и внятно описан прототип метода-обработчика
> каждого из упомянутых событий
Дак еслиб я еще понимал что ето значит:(
← →
Сергей М. © (2008-05-16 16:00) [13]
> что ето значит
Что "ето" ?
← →
Johnnnnnn (2008-05-16 16:10) [14]Там же четко и внятно описан прототип метода-обработчика - vot eto:) ladno sory esli cto bydy sidet razbiratsya
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.041 c