IAutoCompleteDropDown
COM公式ドキュメント
オートコンプリートのドロップダウンリスト(エディットコントロールにユーザーが入力した文字列に対する補完候補を含む)の表示状態を、クライアントがリセットまたは照会できるようにするメソッドを公開します。
メソッド 2
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
オートコンプリートのドロップダウンリストの現在の表示状態を取得します。
| pdwFlags | DWORD* | out | オートコンプリートのドロップダウンリストが現在表示されているかどうかを示す値へのポインター。この情報が不要な場合は、このパラメーターを入力時に NULL にすることができます。このポインターが指す対象として、次の値が認識されます。 (0x0000)リストは表示されていません。 ACDD_VISIBLE (0x0001)リストは表示されています。 |
| ppwszString | LPWSTR* | out | pdwFlags が指す値が ACDD_VISIBLE の場合、ドロップダウンリスト内で最初に選択されている項目を含むバッファーへのポインター。この情報が不要な場合は、入力時に NULL にすることができます。 終了時に pdwFlags が 0 の場合、この値は NULL になります。 終了時にこの値が NULL でない場合、それが指すバッファーは不要になった時点で CoTaskMemFree を使用して解放する必要があります。 |
戻り値
型: HRESULT
このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。
リストが表示されているときに、オートコンプリートオブジェクトへ候補リストの再取得を強制します。
戻り値
型: HRESULT
このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。
解説(Remarks)
ドロップダウンリストは表示される前に必ず再構築されるため、ドロップダウンリストが現在表示されている場合を除き、このメソッドを使用する理由はありません。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IAutoCompleteDropDown "{3CD141F4-3C6A-11D2-BCAA-00C04FD929DB}" #usecom global IAutoCompleteDropDown IID_IAutoCompleteDropDown "{}" #comfunc global IAutoCompleteDropDown_GetDropDownStatus 3 var,var #comfunc global IAutoCompleteDropDown_ResetEnumerator 4 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。#define global IID_IAutoCompleteDropDown "{3CD141F4-3C6A-11D2-BCAA-00C04FD929DB}" #usecom global IAutoCompleteDropDown IID_IAutoCompleteDropDown "{}" #comfunc global IAutoCompleteDropDown_GetDropDownStatus 3 sptr,sptr #comfunc global IAutoCompleteDropDown_ResetEnumerator 4 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。