Partager via


IInkAnalyzer::IsAnalyzing, méthode

Récupère une valeur indiquant si IInkAnalyzer effectue une analyse manuscrite.

Syntaxe

HRESULT IsAnalyzing(
  [out] VARIANT_BOOL *pbAnalyzing
);

Paramètres

pbAnalyzing [out]

VARIANT_TRUE si IInkAnalyzer effectue une analyse de l’entrée manuscrite ; sinon, VARIANT_FALSE.

Valeur retournée

Pour obtenir une description des valeurs renvoyées, consultez Classes et interfaces - Analyse de l’entrée manuscrite.

Notes

Cette propriété est VARIANT_TRUE si IInkAnalyzer effectue une analyse synchrone ou asynchrone.

Exemples

L’exemple suivant montre une méthode qui guide l’arborescence des résultats IContextNode de l’analyseur d’encre. Si l’analyseur d’encre n’effectue pas actuellement d’analyse d’encre, la méthode effectue les opérations suivantes.

  • Obtient la chaîne de reconnaissance supérieure.
  • Obtient le nœud racine de l’analyseur d’encre.
  • Appelle une méthode d’assistance, ExploreContextNode, pour examiner le nœud racine et ses nœuds enfants.
// Helper method that explores the current analysis results of an ink analyzer.
HRESULT CMyClass::ExploreAnalysisResults(
    IInkAnalyzer *pInkAnalyzer)
{
    // Check that the ink analyzer is not currently analyzing ink.
    VARIANT_BOOL bIsAnalyzing;
    HRESULT hr = pInkAnalyzer->IsAnalyzing(&bIsAnalyzing);

    if (SUCCEEDED(hr))
    {
        if (bIsAnalyzing)
        {
            return E_PENDING;
        }

        // Get the ink analyzer's best-result string.
        BSTR recognizedString = NULL;
        hr = pInkAnalyzer->GetRecognizedString(&recognizedString);

        if (SUCCEEDED(hr))
        {
            // Insert code that records the ink analyzer's best-result string here.

            // Get the ink analyzer's root node.
            IContextNode *pRootNode = NULL;
            hr = pInkAnalyzer->GetRootNode(&pRootNode);

            if (SUCCEEDED(hr))
            {
                // Call a helper method that recursively explores context
                // nodes and their subnodes.
                hr = this->ExploreContextNode(pRootNode);
            }

            // Release this reference to the root node.
            if (pRootNode != NULL)
            {
                pRootNode->Release();
                pRootNode = NULL;
            }
        }

        // Free the system resources for the recognized string.
        SysFreeString(recognizedString);
    }

    return hr;
}

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows XP Édition Tablette 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

IInkAnalyzer

IInkAnalyzer::Analyze, méthode

IInkAnalyzer::BackgroundAnalyze, méthode

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