Interfaz IAnalysisStatus
Representa el estado de la operación de análisis de entrada de lápiz mediante la descripción de si el análisis se completó correctamente y si se produjo alguna advertencia.
Miembros
La interfaz IAnalysisStatus hereda de la interfaz IUnknown . IAnalysisStatus también tiene estos tipos de miembros:
Métodos
La interfaz IAnalysisStatus tiene estos métodos.
Método | Descripción |
---|---|
GetAppliedChangesRegion | Recupera la región del documento que corresponde a los cambios realizados en el árbol de nodos de contexto del objeto IInkAnalyzer como resultado del análisis de entrada de lápiz. |
GetWarnings | Recupera una colección IAnalysisWarnings que describe los errores y advertencias generados por la operación de análisis. |
IsSuccessful | Recupera un resumen booleano de los resultados de la operación de análisis. |
Ejemplos
En el ejemplo siguiente se muestra un esquema de un controlador de eventos para el evento _IAnalysisEvents::Results . El controlador comprueba IAnalysisStatus::IsSuccessful. Si la operación de análisis genera advertencias, el controlador recorre en iteración la colección de objetos IAnalysisWarning .
// _IAnalysisEvents::Results event handler.
STDMETHODIMP CMyClass::Results(
IInkAnalyzer *pInkAnalyzer,
IAnalysisStatus *pAnalysisStatus)
{
// Check the status of the analysis operation.
VARIANT_BOOL bResult = VARIANT_FALSE;
HRESULT hr = pAnalysisStatus->IsSuccessful(&bResult);
if( SUCCEEDED(hr) )
{
if( bResult )
{
// Insert code that handles a successful result.
}
else
{
// Get the analysis warnings.
IAnalysisWarnings* pAnalysisWarnings = NULL;
hr = pAnalysisStatus->GetWarnings(&pAnalysisWarnings);
if (SUCCEEDED(hr))
{
// Iterate through the warning collection.
ULONG warningCount = 0;
hr = pAnalysisWarnings->GetCount(&warningCount);
if (SUCCEEDED(hr))
{
IAnalysisWarning *pAnalysisWarning = NULL;
AnalysisWarningCode analysisWarningCode;
for (ULONG index=0; index<warningCount; index++)
{
// Get an analysis warning.
hr = pAnalysisWarnings->GetAnalysisWarning(
index, &pAnalysisWarning);
if (SUCCEEDED(hr))
{
// Get the warning code for the warning.
hr = pAnalysisWarning->GetWarningCode(
&analysisWarningCode);
if (SUCCEEDED(hr))
{
// Insert code that handles each
// analysis warning.
}
}
// Release this reference to the analysis warning.
if (pAnalysisWarning != NULL)
{
pAnalysisWarning->Release();
pAnalysisWarning = NULL;
}
if (FAILED(hr))
{
break;
}
}
}
}
// Release this reference to the analysis warnings collection.
if (pAnalysisWarnings != NULL)
{
pAnalysisWarnings->Release();
pAnalysisWarnings = NULL;
}
}
}
return hr;
}
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible |
Windows XP Tablet PC Edition [solo aplicaciones de escritorio] |
Servidor mínimo compatible |
No se admite ninguno |
Encabezado |
|
Archivo DLL |
|