次の方法で共有


IAccessible::get_accSelection メソッド (oleacc.h)

IAccessible::get_accSelection メソッドは、このオブジェクトの選択した子を取得します。 選択をサポートするすべてのオブジェクトは、このプロパティをサポートする必要があります。

構文

HRESULT get_accSelection(
  [out, retval] VARIANT *pvarChildren
);

パラメーター

[out, retval] pvarChildren

型: VARIANT*

選択されている子に関する情報を受け取る VARIANT 構造体 のアドレス。 次の表では、 pvarChildren で返される情報について説明します。

vt メンバー 値メンバー
VT_EMPTY
子は選択されません。
VT_DISPATCH
1 つの子オブジェクトが選択され、その IDispatch インターフェイスのアドレスが pdispVal メンバーに設定されます。
VT_I4
lVal には、選択されている子要素の子 ID が含まれます。 lVal がCHILDID_SELFの場合は、オブジェクト自体が選択されていることを意味します。
VT_UNKNOWN
複数の子オブジェクトが選択され、 punkVal メンバーには IUnknown インターフェイスのアドレスが含まれています。 クライアントは、選択したオブジェクトを列挙するために使用する IEnumVARIANT インターフェイスについて、このインターフェイスに対してクエリを実行します。

戻り値

種類: HRESULT

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

成功しなかった場合は、次のテーブルの値の 1 つ、または別の標準 COM エラー コードを返します。 サーバーはこれらの値を返しますが、クライアントは常に出力パラメーターをチェックして、有効な値が含まれていることを確認する必要があります。 詳細については、「 IAccessible 戻り値の確認」を参照してください。

エラー 説明
DISP_E_MEMBERNOTFOUND
オブジェクトは、このプロパティをサポートしていません。

注釈

このメソッドは 、IEnumVARIANT インターフェイスをサポートする必要があります。

このメソッドは、pvarChildren パラメーターの IDispatch インターフェイス ポインターまたは子 ID を返します。 IDispatch インターフェイス ポインターまたは子 ID の使用方法の詳細については、「パラメーターでの子 ID の使用方法」を参照してください。

の IAccessible メソッドや関数と同様に、クライアントはユーザー アクションのために IAccessible インターフェイス ポインターのエラーを受け取る可能性があります。 詳細については、「 IAccessible インターフェイス ポインターのエラーの受信」を参照してください。

メモ: このメソッドは、選択したテキストではなく、選択した項目を取得します。

サーバーの例

次のコード例は、カスタムの単一選択リスト ボックスに対してこのメソッドを実装する可能性を示しています。 項目が選択されていない場合、 GetSelectedIndex メソッドは -1 を返します。

// m_pControl is the control that returns this accessible object. 

HRESULT STDMETHODCALLTYPE AccServer::get_accSelection(VARIANT *pvarChildren)
{
    int childID = m_pControl->GetSelectedIndex() + 1; // Convert from 0-based. 
    if (childID <= 0)
    {
        pvarChildren->vt = VT_EMPTY;
    }
    else 
    {
        pvarChildren->vt = VT_I4;
        pvarChildren->lVal = childID;
    }
    return S_OK;
};




要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー oleacc.h
Library Oleacc.lib
[DLL] Oleacc.dll
再頒布可能パッケージ SP6 以降および Windows 95 を使用した Windows NT 4.0 の Active Accessibility 1.3 RDK

こちらもご覧ください

Iaccessible

IAccessible::accSelect

IAccessible::get_accFocus

IDispatch

選択範囲とフォーカスのプロパティとメソッド

バリアント