IAutoComplete2
COM公式ドキュメント
IAutoComplete を拡張します。このインターフェイスにより、オートコンプリートオブジェクトのクライアントは、オートコンプリートの動作を制御する各種オプションを取得・設定できます。
解説(Remarks)
このインターフェイスは、継承元である IAutoComplete インターフェイスのメソッドも提供します。
実装するタイミング
このインターフェイスは通常、アプリケーションでは実装されません。シェルのオートコンプリートオブジェクトによって公開されます。使用するタイミング
オートコンプリートのオプションを取得または設定する必要がある場合に、このインターフェイスを使用します。使用可能なオプションの一覧は、各メソッドの説明に記載されています。メソッド 2
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
現在のオートコンプリートオプションを設定します。(IAutoComplete2.SetOptions)
| dwFlag | DWORD | in | オートコンプリートオプションを指定する、AUTOCOMPLETEOPTIONS 列挙体の 1 つ以上のフラグ。 |
戻り値
型: HRESULT
このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。
解説(Remarks)
TAB キーは既定で無効になっています。これは、TAB キーが通常コントロール内での移動ではなく、コントロール間の移動に使用されるためです。dwFlag に ACO_USETAB フラグを設定すると、ユーザーは TAB キーを押してドロップダウンリスト内の文字列へ移動できるようになります。ドロップダウンリストが閉じている場合、TAB キーは通常どおりコントロール間の移動に使用できます。ユーザーは ESC キーを押すことでドロップダウンリストを閉じることができます。
現在のオートコンプリートオプションを取得します。(IAutoComplete2.GetOptions)
| pdwFlag | DWORD* | out | 現在設定されているオプションを示す、AUTOCOMPLETEOPTIONS 列挙体の 1 つ以上のフラグ。 |
戻り値
型: HRESULT
このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IAutoComplete2 "{EAC04BC0-3791-11D2-BB95-0060977B464C}" #usecom global IAutoComplete2 IID_IAutoComplete2 "{}" #comfunc global IAutoComplete2_SetOptions 5 int #comfunc global IAutoComplete2_GetOptions 6 var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。#define global IID_IAutoComplete2 "{EAC04BC0-3791-11D2-BB95-0060977B464C}" #usecom global IAutoComplete2 IID_IAutoComplete2 "{}" #comfunc global IAutoComplete2_SetOptions 5 int #comfunc global IAutoComplete2_GetOptions 6 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。