ICoreWebView2Find
COMメソッド 10
vtbl = vtable インデックス(0始まり)。HSP等からインデックス指定でCOMメソッドを呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT get_ActiveMatchIndex(INT* value)
| value | INT* | out | 現在アクティブな(選択されている)一致箇所の 1 始まりのインデックスを受け取るポインタである。 |
vtbl 4 HRESULT get_MatchCount(INT* value)
| value | INT* | out | 検索語に一致した箇所の総数を受け取るポインタである。 |
vtbl 5 HRESULT add_ActiveMatchIndexChanged(ICoreWebView2FindActiveMatchIndexChangedEventHandler* eventHandler, EventRegistrationToken* token)
| eventHandler | ICoreWebView2FindActiveMatchIndexChangedEventHandler* | in | アクティブな一致箇所のインデックスが変化したときに呼び出されるイベントハンドラーへのポインタである。 |
| token | EventRegistrationToken* | out | 登録したハンドラーを後で解除するために使用する登録トークンを受け取るポインタである。 |
vtbl 6 HRESULT remove_ActiveMatchIndexChanged(EventRegistrationToken token)
| token | EventRegistrationToken | in | add_ActiveMatchIndexChanged で取得した登録トークンを指定し、対応するイベントハンドラーを解除する。 |
vtbl 7 HRESULT add_MatchCountChanged(ICoreWebView2FindMatchCountChangedEventHandler* eventHandler, EventRegistrationToken* token)
| eventHandler | ICoreWebView2FindMatchCountChangedEventHandler* | in | 一致箇所の総数が変化したときに呼び出されるイベントハンドラーへのポインタである。 |
| token | EventRegistrationToken* | out | 登録したハンドラーを後で解除するために使用する登録トークンを受け取るポインタである。 |
vtbl 8 HRESULT remove_MatchCountChanged(EventRegistrationToken token)
| token | EventRegistrationToken | in | add_MatchCountChanged で取得した登録トークンを指定し、対応するイベントハンドラーを解除する。 |
vtbl 9 HRESULT Start(ICoreWebView2FindOptions* options, ICoreWebView2FindStartCompletedHandler* handler)
| options | ICoreWebView2FindOptions* | in | 検索語や大文字小文字の区別などを保持する検索オプション ICoreWebView2FindOptions へのポインタである。 |
| handler | ICoreWebView2FindStartCompletedHandler* | in | 検索の開始処理が完了したときに呼び出される完了ハンドラーへのポインタである。 |
vtbl 10 HRESULT FindNext( void)
| void | in | 引数はない。 |
vtbl 11 HRESULT FindPrevious( void)
| void | in | 引数はない。 |
vtbl 12 HRESULT Stop( void)
| void | in | 引数はない。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。WebView2 のインターフェースは環境/ローダ経由で取得するため #usecom 末尾は "{}"。
出力引数:
#define global IID_ICoreWebView2Find "{A3EC0F5F-DDBC-54ED-8546-AF75A785B9A6}" #usecom global ICoreWebView2Find IID_ICoreWebView2Find "{}" #comfunc global ICoreWebView2Find_get_ActiveMatchIndex 3 var #comfunc global ICoreWebView2Find_get_MatchCount 4 var #comfunc global ICoreWebView2Find_add_ActiveMatchIndexChanged 5 sptr,var #comfunc global ICoreWebView2Find_remove_ActiveMatchIndexChanged 6 int #comfunc global ICoreWebView2Find_add_MatchCountChanged 7 sptr,var #comfunc global ICoreWebView2Find_remove_MatchCountChanged 8 int #comfunc global ICoreWebView2Find_Start 9 sptr,sptr #comfunc global ICoreWebView2Find_FindNext 10 int #comfunc global ICoreWebView2Find_FindPrevious 11 int #comfunc global ICoreWebView2Find_Stop 12 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_ICoreWebView2Find "{A3EC0F5F-DDBC-54ED-8546-AF75A785B9A6}" #usecom global ICoreWebView2Find IID_ICoreWebView2Find "{}" #comfunc global ICoreWebView2Find_get_ActiveMatchIndex 3 sptr #comfunc global ICoreWebView2Find_get_MatchCount 4 sptr #comfunc global ICoreWebView2Find_add_ActiveMatchIndexChanged 5 sptr,sptr #comfunc global ICoreWebView2Find_remove_ActiveMatchIndexChanged 6 int #comfunc global ICoreWebView2Find_add_MatchCountChanged 7 sptr,sptr #comfunc global ICoreWebView2Find_remove_MatchCountChanged 8 int #comfunc global ICoreWebView2Find_Start 9 sptr,sptr #comfunc global ICoreWebView2Find_FindNext 10 int #comfunc global ICoreWebView2Find_FindPrevious 11 int #comfunc global ICoreWebView2Find_Stop 12 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。