|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
09.07.2012, 13:01 | #1 |
Пользователь
Регистрация: 18.12.2011
Сообщений: 23
|
WebBrowser - Проверить наличие Hyperlink в Textrange
var WB_document:IHTMLDocument2;
TextRange1:IHTMLTxtRange; begin ... TextRange1:=(WB_document.selection. createRange as IHTMLTxtRange); Как можно проверить является ли Textrange или его часть гиперссылкой или частью гиперссылки ? |
10.07.2012, 12:32 | #2 |
Форумчанин
Регистрация: 01.06.2009
Сообщений: 108
|
Как-то вот так:
Код:
|
10.07.2012, 13:09 | #3 |
Пользователь
Регистрация: 18.12.2011
Сообщений: 23
|
Спасибо.
Однако это не всегда даст верный ответ. В ParentElement может быть несколько Link-ов, которые не будут иметь ничего общего с Textrange1. Нужно проверить Textrange1 на пересечение с Link-ом и найти этот Link. |
10.07.2012, 13:25 | #4 |
Пользователь
Регистрация: 18.12.2011
Сообщений: 23
|
Код:
не верно, если какая-то часть selection находится вне Link-a. |
10.07.2012, 14:27 | #5 |
Форумчанин
Регистрация: 01.06.2009
Сообщений: 108
|
В таком случае, другого варианта, как сначала проверять приведенным выше способом (или через Supports(TextRange1.parentElement, IHTMLAnchorElement, Link), так даже проще), а если результат отрицательный - проверять TextRange1.htmlText на наличие тега '<A>', и вытаскивать руками из него href, я не вижу.
Можно, конечно, взять Children у родителя, пройти по всем дочерним элементам (возможно даже рекурсивно), и проверить, есть ли среди них Anchor-ы, но если есть, как ты IHTMLEmelent превратишь в IHTMLTxtRange, чтобы проверить свойством inRange, находится ли найденный среди дочерних элементов anchor внутри selection, или нет? |
10.07.2012, 15:30 | #6 |
Пользователь
Регистрация: 18.12.2011
Сообщений: 23
|
Спасибо.
Наверное так и придется сделать. |
10.07.2012, 17:07 | #7 |
Форумчанин
Регистрация: 01.06.2009
Сообщений: 108
|
Есть еще одна идея, проверь:
Код:
|
10.07.2012, 20:00 | #8 |
Пользователь
Регистрация: 18.12.2011
Сообщений: 23
|
Так оно и есть!
Работает отлично, то что нужно!! Спасибо! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как проверить наличие программы | googl | Общие вопросы Delphi | 13 | 22.03.2012 16:14 |
Проверить на наличие изображения | Nikolay-1989 | БД в Delphi | 1 | 15.03.2011 08:21 |
Проверить наличие устройства | Hulkus | Помощь студентам | 0 | 27.02.2011 23:50 |
Проверить наличие eng символов? | alco84 | Microsoft Office Access | 4 | 08.04.2010 11:08 |
Проверить наличие запроса? | alco84 | Microsoft Office Access | 2 | 25.03.2010 22:56 |