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

Вниз

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

 
Артем ©   (2004-02-29 19:42) [0]

Мастера, только Вы способны помочь!Вопрос следующий. На форме есть edit и webbrowser
с загруженной страницей. Как лучше реализовать
механизм поиска на странице текста, введнного в поле edit?
Надеюсь, что кто-нибудь обязательно поможет.
Заранее ОГРОМНОЕ спасибо!


 
nikkie ©   (2004-02-29 21:11) [1]

TEmbeddedWB.Find
http://www.euromind.com/iedelphi


 
Артем ©   (2004-02-29 21:57) [2]

Спасибо, nikkie. Будем разбираться.


 
Артем ©   (2004-02-29 22:28) [3]

Да, бесспорно ценные исходники! Но... Сложновато будет, да и некогда сейчас вникать во внутреннюю структуру IE. Позже обязательно разберусь и, думаю, очень много нового для себя найду.
Но сейчас! Сейчас мне нужно более простое решение. Разве никак нельзя перехватить стандартный вызов поиска IE и вставить из edit-а текст?


 
nikkie ©   (2004-02-29 22:49) [4]

vaIn := Edit1.Text;
InvokeCmd(TRUE, HTMLID_FIND, 0, vaIn, vaOut);


 
Артем ©   (2004-02-29 23:12) [5]

Спасибо, nikkie!
А я тем временем вот что нашел:

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 :=$000000CE;
WebBrowser1.OleObject.Document.All.Item(i).ScrollIntoView(True);
end;
end;
end;


На мой взгляд - более простое решение, напролом, так сказать. Да, но зато во много раз можно сэкономить на размере.

Еще раз спасибо, nikkie!


 
nikkie ©   (2004-03-01 01:01) [6]

я, конечно, могу только догадываться, что ты хочешь сделать, но приведенный код
1. не всегда найдет нужный текст
2. выделит не найденный текст, а нечто иное
3. это даже не выделение, а изменение цвета

поиск без использования IOleCommandTarget.Exec сделать конечно можно, но не так. и выйдет сложнее...



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

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

Наверх




Память: 0.47 MB
Время: 0.02 c
1-43584
Kraft
2004-02-25 14:49
2004.03.14
Как запретить горячие клавиши


1-43490
DmitryNekl
2004-01-23 13:32
2004.03.14
Создание разных форм в одной процедуре


1-43548
ser_ega
2004-02-25 18:46
2004.03.14
Взаимодействие прог


1-43511
linkz
2004-02-28 21:52
2004.03.14
Получить строку и обработать в таймере


1-43504
Troy
2004-02-28 18:04
2004.03.14
Паскаль. в чем ошибка?