Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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.04 c
4-1190441616
antoxa2005
2007-09-22 10:13
2008.06.08
Открыть порт в Брэндмауэре WinXP SP2


15-1208787695
Palladin
2008-04-21 18:21
2008.06.08
HDD


2-1210741269
noviceman
2008-05-14 09:01
2008.06.08
Уничтожение объекта из "своего" события.


2-1210838343
Вася
2008-05-15 11:59
2008.06.08
FireBird и Year()


2-1211026843
Ultimate
2008-05-17 16:20
2008.06.08
Загрузка определенной строки из файла





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский