Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Вниз

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

 
arturich ©   (2006-12-10 14:39) [0]

Здравствуйте, просмотрел все св-ва данного компонента, но так и не смог найти простого поиска по открытому в нём документу (странице). Как реализовать? Заранее спасибо!


 
Cawa ©   (2006-12-10 14:46) [1]

А те как надо искать программно по исходному коду, или как в броузере по нажатию CTRL+F???


 
xela   (2006-12-10 14:47) [2]

Cawa, по исходнику сначала, а потом уж и hot keys можно назначать )


 
arturich ©   (2006-12-10 14:53) [3]

Да, по исходнику.. просто не могу понять где, с каким свойством это делается?


 
Cawa ©   (2006-12-10 14:54) [4]

2 xela - просто можно диалоговое окно поиска IE вызывать, приблизительно так:

const
 HTMLID_FIND       = 1;
 HTMLID_VIEWSOURCE = 2;
 HTMLID_OPTIONS    = 3;

...

procedure TForm1.FindIE;
const
 CGID_WebBrowser: TGUID = "{ED016940-BD5B-11cf-BA4E-00C04FD70816}";
var
 CmdTarget : IOleCommandTarget;
 vaIn, vaOut: OleVariant;
 PtrGUID: PGUID;
begin
 New(PtrGUID);
 PtrGUID^ := CGID_WebBrowser;
 if WebBrowser1.Document <> nil then
   try
     WebBrowser1.Document.QueryInterface(IOleCommandTarget, CmdTarget);
     if CmdTarget <> nil then
       try
         CmdTarget.Exec( PtrGUID, HTMLID_FIND, 0, vaIn, vaOut);
       finally
         CmdTarget._Release;
       end;
   except
     // nothing
   end;
 Dispose(PtrGUID);
end;


 
Cawa ©   (2006-12-10 14:59) [5]

Если нужен чисто текст из документа вытащить, то можно так:

uses mshtml, activex;

procedure GetHtmlCode(WebBrowser: TWebBrowser; FileName: string);
var
htmlDoc: IHtmlDocument2;
PersistFile: IPersistFile;
begin
htmlDoc := WebBrowser.document as IHtmlDocument2;
PersistFile := HTMLDoc as IPersistFile;
PersistFile.save(StringToOleStr(FileName), true);
end;


 
arturich ©   (2006-12-10 15:04) [6]

Cawa, да, так конечно можно, но мне требуется сделать "невизуальный" поиск, без диалогов. Программа быстро ищет заданный текст и если находит, то выполняет соот-вующие действия. Тут задумано так, чтобы пользователь вообще мог отсутствовать во время исполнения таких поисков :(


 
arturich ©   (2006-12-10 15:05) [7]

Cawa, сейчас попробую второй вариант, спасибо!



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

Форум: "Начинающим";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.058 c
2-1165761037
Iamdanil.yalta
2006-12-10 17:30
2006.12.31
Компиляция Delphi 7


3-1161093040
Desdechado
2006-10-17 17:50
2006.12.31
Ищу пояснения по полям User_Indexes


5-1145929000
Felliks
2006-04-25 05:36
2006.12.31
Ошибка с модулями


15-1165432569
tesseract
2006-12-06 22:16
2006.12.31
Кто курит трубку?


3-1161182043
PPmaster
2006-10-18 18:34
2006.12.31
Проблемы с QuickReport CBuilder2006





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский