2003-03-16 [長年日記]

IWebBrower2で検索

WebBrowserコントロールで表示している中から検索する方法を調べたのでメモっておきます。ちょっと回りくどいのでわかりにくいかも。

まず、IWebBrowser2::get_documentでIHTMLDocument2を取得し、IHTMLDocument2::get_bodyでBODYのIHTMLBodyElementを取得します。そして、IHTMLBodyElement::createTextRangeでIHTMLTxtRangeを取得し、IHTMLTxtRange::findTextで検索します。検索に成功したら、IHTMLTxtRange::selectで検索結果を選択することが出来ます。

IWebBrowser2で選択

既に選択されているところを取得する方法は、IWebBrowser2::get_documentでIHTMLDocument2を取得。IHTMLDocument2::get_selectionでIHTMLSelectionObjectを取得。IHTMLSelectionObject::createRangeでIHTMLTxtRangeを取得という感じで。