Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   [решено] Поиск в TWebBrowser (http://forum.oszone.net/showthread.php?t=207647)

ibmpc 26-05-2011 22:27 1683309

Поиск в TWebBrowser
 
Искал реализацию поиска с подсвечиванием по содержимому компонента TWebBrowser, но ничего толком рабочего так и нет. Ребята может у кого есть рабочий код ?

opel431 27-05-2011 00:18 1683358

Был такой пример (http://forum.xakep.ru/m_1585044/tm.htm).

Так ты ищешь линки:

procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
begin
for i := 0 to Webbrowser1.OleObject.Document.links.Length - 1 do
Listbox1.Items.Add(Webbrowser1.OleObject.Document.Links.Item(i));
end;

так ты ищешь и подсвечиваешь текст:
{....}
private
procedure SearchAndHighlightText(aText: string);
{....}
procedure TForm1.SearchAndHighlightText(aText: string);
var i: Integer;
begin
for i := 0 to WebBrowser1.OleObject.Document.All.Length - 1 do
begin
if Pos(aText, WebBrowser1.OleObject.Document.All.Item(i).InnerText) <> 0
then
begin
WebBrowser1.OleObject.Document.All.Item(i).Style.Color := '#FFFF00';
WebBrowser1.OleObject.Document.All.Item(i).ScrollIntoView(True);
end;
end;
end;

ibmpc 27-05-2011 18:03 1683801

opel431, пример то был и я его уже видел :) Только почему он не работоспособен (( Точнее если слово есть подсвечивает весь текст? А ежели нету то и эффекта нет.

opel431 28-05-2011 00:40 1683965

Цитата:

Цитата ibmpc
Только почему он не работоспособен (( Точнее если слово есть подсвечивает весь текст))»

Ну правильно. Я, не пробовал работать с этим компонентом, но по коду видно, что функция нашла слово и в операторном блоке изменила цвет текста. Вам, видимо нужно в операторном блоке попробовать обрабатывать уже само слово, т.е. найти позицию начала, его длину, и только потом изменить цвет.

ibmpc 31-05-2011 15:17 1685709

Самое смешное реализовывал поиск в TWEbBrowser и только недавно напоролся - при нажатии Ctrl+F появляется окно поиска от WebBrowser (Explorer) вполне рабочее и отлично подсвечивающее текст + весь стандартный функционал.


Время: 05:05.

Время: 05:05.
© OSzone.net 2001-