Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.23;
Скачать: CL | DM;

Вниз

TWebBrowser   Найти похожие ветки 

 
Fiend ©   (2002-09-11 17:02) [0]

Здрасте уважаемые!

Вопрос такой:
как можно определить, текст ссылки, на которой нажал пользователь?

Т.е. мне нужно в событии BeforeNavigate2 (вызывается при навигации) определить, что за текст был виден юзеру.

Например, если тэг HTML выглядел так: <a href=" http://delphi.mastak.ru">Перейти на сайт мастеров Делфи</a>
как получить текст "Перейти на сайт мастеров Делфи"


 
Opuhshii ©   (2002-09-11 17:23) [1]

%) Почитай,.. http://www.compress.ru/Article.asp?id=1127


 
Fiend ©   (2002-09-12 12:42) [2]

Решил опубликовать ответ, дабы следующие за мной по этому пути люди не становились на грабли и не спотыкались.

За помощь огромное спасибо Опухшему!
Виртуальное пиво ему!

Ответ достаточно прост, но для человека, который практически не работал с ОЛЕ (т.е. для меня), это оказался тёмный лес.

procedure TForm1.EmbeddedWB1BeforeNavigate2(Sender: TObject;
const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
Headers: OleVariant; var Cancel: WordBool);
var
doc:variant;
Link:variant;
i:INteger;
cnt:INteger;
begin
doc:=EmbeddedWB1.Document;
cnt:=doc.links.length-1;
for i:=0 to cnt do begin
if varastype(doc.links.item(i),varString) = varastype(URL,varString) then begin
Link:=doc.links.item(i);
Showmessage(Link.InnerText);
end;
end;

Грубо говоря, в обработчике события OnBeforeNavigate2, которое вызывается, когда TWebBrowser получает новый адрес для навигации, нужно пробежаться по всем ссылкам всё еще активного документа, и сравнить их url, с урлом навигации.

Спасибо всем, кто откликался в чате. Опухшему отдельное СПОС!



Страницы: 1 вся ветка

Текущий архив: 2002.09.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
7-73907
hort
2002-06-25 23:02
2002.09.23
как считать данные из BIOS (температура процессора)


1-73644
Андрусь
2002-09-12 16:35
2002.09.23
Как с элемента убрать фокус


3-73551
Vasechkin
2002-09-03 08:00
2002.09.23
Срочно нужна помощь!!!!!!!


14-73849
Tiger
2002-08-26 23:52
2002.09.23
Запись CD


1-73685
KidMan
2002-09-10 22:52
2002.09.23
Вторая загрузка одного и того же модуля