Partager via


Méthode IContextNode::GetId

Récupère l’identificateur de l’objet IContextNode .

Syntaxe

HRESULT GetId(
  [out] GUID *pId
);

Paramètres

pId [out]

Identificateur de l’objet IContextNode .

Valeur retournée

Pour obtenir une description des valeurs de retour, consultez Classes et interfaces - Analyse manuscrite.

Notes

L’analyseur d’encre attribue un identificateur unique à tous les nœuds de contexte qu’il crée. Pendant l’analyse d’encre, l’analyseur d’encre peut modifier l’identificateur d’un nœud de contexte. Par exemple, l’analyseur d’encre peut reclassifier un nœud de mot en deux nœuds de mots, puis affecter l’identificateur d’origine à l’un et un nouvel identificateur à l’autre. Ou bien, l’analyseur d’encre peut reclassifier deux nœuds de mots en tant que nœud de mot et affecter l’un des identificateurs d’origine au nouveau nœud de mot.

Exemples

L’exemple suivant montre une méthode d’assistance qui récupère des informations sur un nœud spécifié, son paramètre pContextNode . Cette méthode d’assistance retourne des informations des méthodes suivantes.

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

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows XP Édition Tablet PC [applications de bureau uniquement]
Serveur minimal pris en charge
Aucun pris en charge
En-tête
IACom.h (nécessite également IACom_i.c)
DLL
IACom.dll

Voir aussi

IContextNode

Informations de référence sur l’analyse manuscrite