Metodo IContextNode::GetLocation

Recupera la posizione e le dimensioni dell'oggetto IContextNode .

Sintassi

HRESULT GetLocation(
  [out] IAnalysisRegion **ppIAnalysisRegion
);

Parametri

ppIAnalysisRegion [out]

Puntatore alla posizione e alle dimensioni dell'oggetto IContextNode .

Valore restituito

Per una descrizione dei valori restituiti, vedere Classi e interfacce - Analisi input penna.

Commenti

Attenzione

Per evitare una perdita di memoria, chiamare IUnknown::Release in *ppIAnalysisRegion quando non è più necessario usare l'area di analisi.

La posizione di un nodo contenitore è determinata dall'individuazione dell'unione di tutte le posizioni della foglia. La posizione di un nodo foglia input penna è determinata dall'individuazione dell'unione del rettangolo di selezione dei tratti associati. Il percorso di un nodo foglia non input penna viene impostato quando viene creato il nodo e può essere aggiornato usando IContextNode::SetLocation.

Esempio

Nell'esempio seguente viene illustrato un metodo helper che recupera informazioni su un nodo specificato, il relativo parametro pContextNode . Questo metodo helper restituisce informazioni dai metodi seguenti.

// Helper method for collecting information about a context node.
HRESULT CMyClass::GetNodeInformation(
    IContextNode *pContextNode,
    GUID *pNodeIdentifier,
    GUID *pContextNodeType,
    IAnalysisRegion **ppAnalysisRegion,
    IContextNode **ppParentNode,
    IContextNodes **ppSubNodes)
{
    // Get the identifier of the context node.
    HRESULT hr = pContextNode->GetId(pNodeIdentifier);

    if (FAILED(hr))
    {
        return hr;
    }

    // Get the type identifier for the context node.
    hr = pContextNode->GetType(pContextNodeType);

    if (FAILED(hr))
    {
        return hr;
    }

    // Get the location of the context node.
    hr = pContextNode->GetLocation(ppAnalysisRegion);

    if (FAILED(hr))
    {
        return hr;
    }

    // Get the parent node of the context node.
    hr = pContextNode->GetParentNode(ppParentNode);

    if (FAILED(hr))
    {
        if ((*ppAnalysisRegion) != NULL)
        {
            (*ppAnalysisRegion)->Release();
            (*ppAnalysisRegion) = NULL;
        }
        return hr;
    }

    // Get the subnodes of the context node.
    hr = pContextNode->GetSubNodes(ppSubNodes);

    if (FAILED(hr))
    {
        if (*ppAnalysisRegion)
        {
            (*ppAnalysisRegion)->Release();
            (*ppAnalysisRegion) = NULL;
        }
        if (*ppParentNode)
        {
            (*ppParentNode)->Release();
            (*ppParentNode) = NULL;
        }
        return hr;
    }

    return hr;
}

Requisiti

Requisito Valore
Client minimo supportato
Windows XP Tablet PC Edition [solo app desktop]
Server minimo supportato
Nessuno supportato
Intestazione
IACom.h (richiede anche IACom_i.c)
DLL
IACom.dll

Vedi anche

IContextNode

IAnalysisRegion

IContextNode::SetLocation

Riferimento all'analisi dell'input penna