Metodo IAccessible::get_accName (oleacc.h)

Il metodo IAccessible::get_accName recupera il nome dell'oggetto specificato. Tutti gli oggetti supportano questa proprietà.

Sintassi

HRESULT get_accName(
  [in]          VARIANT varChild,
  [out, retval] BSTR    *pszName
);

Parametri

[in] varChild

Tipo: VARIANT

Specifica se il nome recuperato appartiene all'oggetto o a uno degli elementi figlio dell'oggetto. Questo parametro è CHILDID_SELF (per ottenere informazioni sull'oggetto) o un ID figlio (per ottenere informazioni sull'elemento figlio dell'oggetto). Per altre informazioni sull'inizializzazione della struttura VARIANT, vedere Modalità di utilizzo degli ID figlio nei parametri.

[out, retval] pszName

Tipo: BSTR*

Indirizzo di un oggetto BSTR che riceve una stringa contenente il nome dell'oggetto specificato.

Valore restituito

Tipo: HRESULT

Se ha esito positivo, restituisce S_OK.

In caso contrario, restituisce uno dei valori della tabella che segue o un altro codice di errore COM standard. I server restituiscono questi valori, ma i client devono sempre controllare i parametri di output per assicurarsi che contengano valori validi. Per altre informazioni, vedere Controllo dei valori restituiti IAccessible.

Errore Descrizione
S_FALSE
L'oggetto specificato non ha un nome.
E_INVALIDARG
Un argomento non è valido.

Commenti

Molti oggetti, ad esempio icone, menu, caselle di controllo, caselle combinate e altri controlli hanno etichette visualizzate agli utenti. Qualsiasi etichetta visualizzata agli utenti viene utilizzata per la proprietà name dell'oggetto. Per altre informazioni, vedere la proprietà Name.

Nota per gli sviluppatori di server: Se si utilizza il testo del menu o del pulsante per la proprietà Name, rimuovere eventuali e commerciale (&) contrassegnando i tasti di scelta della tastiera. Specificare la chiave di accesso al client in risposta a IAccessible::get_accKeyboardShortcut.

Localizzare la stringa restituita da questa proprietà.

Esempio di server

Nell'esempio seguente viene illustrata una possibile implementazione di questo metodo per un controllo casella di riepilogo personalizzato che gestisce i propri elementi figlio.

// 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;
};

Esempio di client

Nella funzione di esempio seguente viene visualizzato il nome accessibile di un controllo .

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;
}

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione oleacc.h
Libreria Oleacc.lib
DLL Oleacc.dll
Componente ridistribuibile Accessibilità attiva 1.3 RDK in Windows NT 4.0 con SP6 e versioni successive e Windows 95

Vedi anche

Iaccessible

IAccessible::get_accKeyboardShortcut

Proprietà Name

VARIANTE