IInkAnalyzer::GetRootNode 方法

取得IInkAnalyzer物件內容樹狀結構的根ICoNtextNode

語法

HRESULT GetRootNode(
  [out] IContextNode **ppRootNode
);

參數

ppRootNode [out]

IInkAnalyzer物件內容樹狀結構的根ICoNtextNode

傳回值

如需傳回值的描述,請參閱 類別和介面 - 筆跡分析

備註

警告

若要避免記憶體流失,當您不再需要使用根節點時,請在ppRootNode上呼叫IUnknown::Release

IInkAnalyzer會維護ICoNtextNode物件的樹狀結構。 這些物件包含分析和分析結果的輸入。 一開始將筆劃新增至 IInkAnalyzer時, IInkAnalyzer 會將它們指派給 UnclassifiedInk 類型的 ICoNtextNode (請參閱 ICoNtextNode::GetType內容節點類型) 。 分析筆劃之後, IInkAnalyzer 會將它們指派給樹狀結構中適當的 ICoNtextNode 物件。 如需使用 IInkAnalyzer 分析筆跡的詳細資訊,請參閱 筆跡分析概觀

範例

下列範例顯示一個方法,會逐步執行筆跡分析器的 ICoNtextNode 結果樹狀結構。 如果 IInkAnlyzer 目前未執行筆跡分析,此方法會執行下列動作。

  • 取得頂端辨識字串。
  • 取得筆跡分析器的根節點。
  • 呼叫協助程式方法 ExploreContextNode ,以檢查根節點及其子節點。
// 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;
}

規格需求

需求
最低支援的用戶端
Windows XP Tablet PC Edition [僅限傳統型應用程式]
最低支援的伺服器
都不支援
標頭
IACom.h (也需要 IACom_i.c)
DLL
IACom.dll

另請參閱

IInkAnalyzer

ICoNtextNode

內容節點類型

筆跡分析參考