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

ILegacyIAccessibleProvider

COM
IIDe44c3566-915d-4070-99c6-047bff5a08f5継承元IUnknown自前メソッド開始 vtbl3

公式ドキュメント

Microsoft UI Automation クライアントが、Microsoft Active Accessibility 要素の基盤となる IAccessible 実装にアクセスできるようにします。

解説(Remarks)

このインターフェイスは、レガシー上の理由からネイティブの MSAA プロパティおよびメソッドを必要とする UI Automation クライアントに対してそれらを公開するために、Microsoft Active Accessibility to UI Automation Proxy によって実装されます。このプロキシは、Microsoft Active Accessibility をネイティブに実装するアプリケーションまたはコントロールに対して、このインターフェイスを自動的に提供します。このインターフェイスは、UI Automation アプリケーションまたはコントロールが実装することを意図したものではありません。

メソッド 14

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

vtbl 3 HRESULT Select(INT flagsSelect)

要素を選択します。

flagsSelectINTin実行する選択操作またはフォーカス操作を指定します。このパラメーターには、SELFLAG Constants に記載されている値の組み合わせを指定する必要があります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 4 HRESULT DoDefaultAction()

コントロールに対して既定のアクションを実行します。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 5 HRESULT SetValue(LPWSTR szValue)

コントロールの文字列値を設定します。

szValueLPWSTRin値を格納するローカライズされた文字列。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 6 HRESULT GetIAccessible(IAccessible** ppAccessible)

LegacyIAccessible コントロールパターンをサポートする UI Automation 要素に対応するアクセシブルオブジェクトを取得します。

ppAccessibleIAccessible**outアクセシブルオブジェクトへのポインターを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 7 HRESULT get_ChildId(INT* pRetVal)

この要素の子識別子を指定します。

pRetValINT*out要素の子 ID を受け取る INT へのポインタであり、オブジェクト自身の場合は CHILDID_SELF となる。
vtbl 8 HRESULT get_Name(LPWSTR* pszName)

この要素の名前を指定します。

pszNameLPWSTR*out要素の名前を文字列で受け取る LPWSTR へのポインタである。呼び出し側は SysFreeString で解放する。
vtbl 9 HRESULT get_Value(LPWSTR* pszValue)

この要素の値を指定します。

pszValueLPWSTR*out要素の値を文字列で受け取る LPWSTR へのポインタである。呼び出し側は SysFreeString で解放する。
vtbl 10 HRESULT get_Description(LPWSTR* pszDescription)

この要素の説明を格納します。

pszDescriptionLPWSTR*out要素の説明を文字列で受け取る LPWSTR へのポインタである。呼び出し側は SysFreeString で解放する。
vtbl 11 HRESULT get_Role(DWORD* pdwRole)

この要素のロール識別子を指定します。

pdwRoleDWORD*out要素のロール(オブジェクトの種類)を示す MSAA のロール識別子を受け取る DWORD へのポインタである。
vtbl 12 HRESULT get_State(DWORD* pdwState)

この要素の状態を指定します。

pdwStateDWORD*out要素の状態を示す MSAA の状態フラグの組み合わせを受け取る DWORD へのポインタである。
vtbl 13 HRESULT get_Help(LPWSTR* pszHelp)

この要素のヘルプ情報を格納する文字列を指定します。

pszHelpLPWSTR*out要素のヘルプ文字列を受け取る LPWSTR へのポインタである。呼び出し側は SysFreeString で解放する。
vtbl 14 HRESULT get_KeyboardShortcut(LPWSTR* pszKeyboardShortcut)

この要素のキーボードショートカットを指定します。

pszKeyboardShortcutLPWSTR*out要素のキーボードショートカット文字列を受け取る LPWSTR へのポインタである。呼び出し側は SysFreeString で解放する。
vtbl 15 HRESULT GetSelection(SAFEARRAY** pvarSelectedChildren)

コントロール内で選択されている項目を取得します。

pvarSelectedChildrenSAFEARRAY**out選択された項目を格納する SAFEARRAY へのポインターを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 16 HRESULT get_DefaultAction(LPWSTR* pszDefaultAction)

この要素の既定のアクションの説明を格納します。

pszDefaultActionLPWSTR*out要素の既定の操作を表す文字列を受け取る LPWSTR へのポインタである。呼び出し側は SysFreeString で解放する。
出典・ライセンス: 上記「公式ドキュメント」の内容は 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_ILegacyIAccessibleProvider "{E44C3566-915D-4070-99C6-047BFF5A08F5}"
#usecom global ILegacyIAccessibleProvider IID_ILegacyIAccessibleProvider "{}"
#comfunc global ILegacyIAccessibleProvider_Select                3 int
#comfunc global ILegacyIAccessibleProvider_DoDefaultAction       4
#comfunc global ILegacyIAccessibleProvider_SetValue              5 wstr
#comfunc global ILegacyIAccessibleProvider_GetIAccessible        6 sptr
#comfunc global ILegacyIAccessibleProvider_get_ChildId           7 var
#comfunc global ILegacyIAccessibleProvider_get_Name              8 var
#comfunc global ILegacyIAccessibleProvider_get_Value             9 var
#comfunc global ILegacyIAccessibleProvider_get_Description       10 var
#comfunc global ILegacyIAccessibleProvider_get_Role              11 var
#comfunc global ILegacyIAccessibleProvider_get_State             12 var
#comfunc global ILegacyIAccessibleProvider_get_Help              13 var
#comfunc global ILegacyIAccessibleProvider_get_KeyboardShortcut  14 var
#comfunc global ILegacyIAccessibleProvider_GetSelection          15 var
#comfunc global ILegacyIAccessibleProvider_get_DefaultAction     16 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。