IAccessible::get_accName-Methode (oleacc.h)
Die IAccessible::get_accName-Methode ruft den Namen des angegebenen Objekts ab. Alle Objekte unterstützen diese Eigenschaft.
Syntax
HRESULT get_accName(
[in] VARIANT varChild,
[out, retval] BSTR *pszName
);
Parameter
[in] varChild
Typ: VARIANT
Gibt an, ob der abgerufene Name zum Objekt oder zu einem der untergeordneten Elemente des Objekts gehört. Dieser Parameter ist entweder CHILDID_SELF (zum Abrufen von Informationen zum Objekt) oder eine untergeordnete ID (zum Abrufen von Informationen zum untergeordneten Element des Objekts). Weitere Informationen zum Initialisieren der VARIANT-Struktur finden Sie unter Verwenden untergeordneter IDs in Parametern.
[out, retval] pszName
Typ: BSTR*
Adresse eines BSTR , der eine Zeichenfolge empfängt, die den Namen des angegebenen Objekts enthält.
Rückgabewert
Typ: HRESULT
Gibt bei Erfolg S_OK zurück.
Wenn dies nicht erfolgreich ist, gibt einen der Werte in der folgenden Tabelle oder einen anderen COM-Standardfehlercode zurück. Server geben diese Werte zurück, aber Clients müssen ausgabeparameter immer überprüfen, um sicherzustellen, dass sie gültige Werte enthalten. Weitere Informationen finden Sie unter Überprüfen von IAccessible-Rückgabewerten.
Fehler | BESCHREIBUNG |
---|---|
|
Das angegebene Objekt hat keinen Namen. |
|
Ein Argument ist ungültig. |
Hinweise
Viele Objekte wie Symbole, Menüs, Kontrollkästchen, Kombinationsfelder und andere Steuerelemente verfügen über Bezeichnungen, die Benutzern angezeigt werden. Jede Bezeichnung, die benutzern angezeigt wird, wird für die name-Eigenschaft des Objekts verwendet. Weitere Informationen finden Sie in der Name-Eigenschaft.
Hinweis für Serverentwickler: Wenn Sie Menü- oder Schaltflächentext für die Name-Eigenschaft verwenden, entfernen Sie alle ampersands (&), die die Tastaturzugriffstasten markieren. Geben Sie den Zugriffsschlüssel für den Client als Antwort auf IAccessible::get_accKeyboardShortcut an.
Lokalisieren Sie die von dieser Eigenschaft zurückgegebene Zeichenfolge.
Serverbeispiel
Das folgende Beispiel zeigt eine mögliche Implementierung dieser Methode für ein benutzerdefiniertes Listenfeldsteuerelement, das seine eigenen untergeordneten Elemente verwaltet.
// m_pStdAccessibleObject is the standard object returned by CreateStdAccessibleObject.
// m_pControl is the control object that provides this accessibility object. It maintains
// a zero-based collection of child items.
HRESULT STDMETHODCALLTYPE AccServer::get_accName(
VARIANT varChild,
BSTR *pszName)
{
if (varChild.vt != VT_I4)
{
*pszName = NULL;
return E_INVALIDARG;
}
// For the control itself, let the standard accessible object return the name
// assigned by the application. This is either the "caption" property or, if
// there is no caption, the text of any label.
if (varChild.lVal == CHILDID_SELF)
{
return m_pStdAccessibleObject->get_accName(varChild, pszName);
}
// Else return the name of the item in the list.
else
{
CustomListControlItem* pItem = m_pControl->GetItemAt(varChild.lVal - 1);
if (pItem)
{
*pszName = SysAllocString(pItem->GetName());
}
}
return S_OK;
};
Clientbeispiel
Die folgende Beispielfunktion zeigt den Barrierefreien Namen eines Steuerelements an.
HRESULT PrintName(IAccessible* pAcc, long childId)
{
if (pAcc == NULL)
{
return E_INVALIDARG;
}
BSTR bstrName;
VARIANT varChild;
varChild.vt = VT_I4;
varChild.lVal = childId;
HRESULT hr = pAcc->get_accName(varChild, &bstrName);
printf("Name: %S ", bstrName);
SysFreeString(bstrName);
return hr;
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | oleacc.h |
Bibliothek | Oleacc.lib |
DLL | Oleacc.dll |
Verteilbare Komponente | Active Accessibility 1.3 RDK unter Windows NT 4.0 mit SP6 und höher und Windows 95 |