IAccessible::get_accDefaultAction メソッド (oleacc.h)
IAccessible::get_accDefaultAction メソッドは、オブジェクトの既定のアクションを示す文字列を取得します。 既定のアクションがないオブジェクトもあります。
構文
HRESULT get_accDefaultAction(
[in] VARIANT varChild,
[out, retval] BSTR *pszDefaultAction
);
パラメーター
[in] varChild
型: VARIANT
取得した既定のアクションを オブジェクトで実行するか、オブジェクトの子要素の 1 つで実行するかを指定します。 このパラメーターは、CHILDID_SELF (オブジェクトに関する情報を取得するため) または子 ID (オブジェクトの子要素に関する情報を取得する場合) のいずれかです。 VARIANT 構造体の初期化の詳細については、「パラメーターでの子 ID の使用方法」を参照してください。
[out, retval] pszDefaultAction
種類: BSTR*
指定したオブジェクトの既定のアクションを記述するローカライズされた文字列を受け取る BSTR のアドレス。このオブジェクトに既定のアクションがない場合、値は NULL です。
戻り値
型: HRESULT
成功した場合は、S_OK を返します。
成功しなかった場合は、次のテーブルの値の 1 つ、または別の標準 COM エラー コードを返します。 サーバーはこれらの値を返しますが、クライアントは常に出力パラメーターをチェックして、有効な値が含まれていることを確認する必要があります。 詳細については、「 IAccessible 戻り値の確認」を参照してください。
エラー | 説明 |
---|---|
|
指定したオブジェクトに既定のアクションはありません。 |
|
引数が有効ではありません。 |
|
指定したオブジェクトは、このプロパティをサポートしていません。 |
解説
取得された文字列は、オブジェクトに対して実行されるアクションを表します。結果としてオブジェクトが行う操作は説明しません。 たとえば、文書を印刷するツールバー ボタンの既定のアクションは、"現在の文書を印刷する" ではなく "押す" です。
オブジェクトの既定のアクションとその値を混同しないでください。 詳細については、「 DefaultAction プロパティ」を参照してください。
アクションを実行するコントロールのみが、このメソッドをサポートします。
サーバー開発者への注意: このプロパティから返される文字列をローカライズします。
サーバーの例
次のコード例は、カスタム リスト ボックスに対してこのメソッドを実装できる方法を示しています。 わかりやすくするために、文字列はローカライズされません。
HRESULT STDMETHODCALLTYPE AccServer::get_accDefaultAction(
VARIANT varChild,
BSTR *pszDefaultAction)
{
if (varChild.vt != VT_I4)
{
*pszDefaultAction = NULL;
return E_INVALIDARG;
}
if (varChild.lVal == CHILDID_SELF)
{
*pszDefaultAction = SysAllocString(L"None.");
}
else
{
*pszDefaultAction = SysAllocString(L"Double-click");
}
return S_OK;
};
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | oleacc.h |
Library | Oleacc.lib |
[DLL] | Oleacc.dll |
再頒布可能パッケージ | WINDOWS NT 4.0 SP6 以降および Windows 95 でのアクティブなアクセシビリティ 1.3 RDK |