Win32 API 日本語リファレンス
ホームUI.TextServices › IAccDictionary

IAccDictionary

COM
IID1dc4cb5f-d737-474d-ade9-5ccfc9bc1cc9継承元IUnknown自前メソッド開始 vtbl3

公式ドキュメント

文字列操作のためのメソッドを公開します。

メソッド 5

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT GetLocalizedString(GUID* Term, DWORD lcid, LPWSTR* pResult, DWORD* plcid)

クライアントは IAccDictionary::GetLocalizedString メソッドを呼び出して、すべてのシステム プロパティおよびその値のローカライズされた文字列を取得します。

TermGUID*inプロパティを表すグローバル一意識別子 (GUID)。
lcidDWORDin返される文字列のロケール。
pResultLPWSTR*out用語を表すローカライズされた文字列。
plcidDWORD*out返された文字列の言語。

戻り値

型: HRESULT

成功した場合は S_OK を返します。

解説(Remarks)

このメソッドは、lcid で指定された言語でプロパティの名前を返します。その言語がシステムに存在しない場合、Microsoft Active Accessibility は最も適合する言語を見つけ、その言語の文字列を返します。Term パラメーターがディクショナリ内に見つからない場合、pResultNULL になります。

vtbl 4 HRESULT GetParentTerm(GUID* Term, GUID* pParentTerm)

クライアントは IAccDictionary::GetParentTerm メソッドを呼び出して、オブジェクト階層ツリーを移動します。このメソッドは、指定したプロパティの親オブジェクトを返します。

TermGUID*inプロパティの GUID。
pParentTermGUID*outTerm パラメーターで指定されたプロパティの親。

戻り値

型: HRESULT

成功した場合は S_OK を返します。

解説(Remarks)

Term に親の用語が存在しない場合、pParentTerm は GUID_NULL を指します。

vtbl 5 HRESULT GetMnemonicString(GUID* Term, LPWSTR* pResult)

ニーモニック文字列を取得します。メモ: Active Accessibility Text Services は非推奨です。

TermGUID*inプロパティを表す GUID。
pResultLPWSTR*outプロパティのニーモニック文字列。この文字列はローカライズされません。

戻り値

型: HRESULT

成功した場合は S_OK を返します。

解説(Remarks)

Term パラメーターがディクショナリ内に見つからない場合、pResultNULL になります。

vtbl 6 HRESULT LookupMnemonicTerm(LPWSTR bstrMnemonic, GUID* pTerm)

クライアントは IAccDictionary::LookupMnemonicTerm メソッドを呼び出して、指定したニーモニック文字列に対応するプロパティを検索します。

bstrMnemonicLPWSTRinプロパティのローカライズされていないニーモニック文字列。
pTermGUID*outbstrMnemonic で表されるプロパティを示す GUID。

戻り値

型: HRESULT

成功した場合は S_OK を返します。

解説(Remarks)

bstrMnemonic パラメーターがディクショナリ内に見つからない場合、pTermNULL になります。

vtbl 7 HRESULT ConvertValueToString(GUID* Term, DWORD lcid, VARIANT varValue, LPWSTR* pbstrResult, DWORD* plcid)

クライアントは IAccDictionary::ConvertValueToString メソッドを呼び出して、値をローカライズされた文字列に変換します。

TermGUID*inプロパティを表す GUID。
lcidDWORDin返される文字列のロケール。
varValueVARIANTin項目の値。
pbstrResultLPWSTR*out変換後の値へのポインター。
plcidDWORD*out返された文字列の言語へのポインター。

戻り値

型: HRESULT

成功した場合は S_OK を返します。

解説(Remarks)

Term パラメーターが true または false を取り得る場合、ConvertValueToString はローカライズされた文字列、または TRUEFALSE を返します。Term パラメーターが色を表す場合、ConvertValueToString は最も近い色名の文字列を返します。Term パラメーターがディクショナリ内に見つからない場合、pbstrResultNULL になります。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IAccDictionary "{1DC4CB5F-D737-474D-ADE9-5CCFC9BC1CC9}"
#usecom global IAccDictionary IID_IAccDictionary "{6572EE16-5FE5-4331-BB6D-76A49C56E423}"
#comfunc global IAccDictionary_GetLocalizedString    3 var,int,var,var
#comfunc global IAccDictionary_GetParentTerm         4 var,var
#comfunc global IAccDictionary_GetMnemonicString     5 var,var
#comfunc global IAccDictionary_LookupMnemonicTerm    6 wstr,var
#comfunc global IAccDictionary_ConvertValueToString  7 var,int,int,var,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。