Interfaccia IAnalysisWarning
Rappresenta un avviso o un errore che si verifica durante un'operazione di analisi dell'input penna.
Membri
L'interfaccia IAnalysisWarning eredita dall'interfaccia IUnknown . IAnalysisWarning include anche questi tipi di membri:
Metodi
L'interfaccia IAnalysisWarning include questi metodi.
Metodo | Descrizione |
---|---|
GetBackgroundError | Recupera il codice di errore per l'operazione di analisi dell'input penna in background se si è verificato un errore. |
GetHint | Recupera l'hint di analisi che ha causato questo avviso |
GetNodeIds | Recupera gli identificatori di tutti i nodi di contesto pertinenti associati a questo avviso. |
GetWarningCode | Recupera il tipo di avviso che si è verificato usando l'enumerazione AnalysisWarningCode . |
Commenti
I tipi di avvisi che possono verificarsi sono descritti dall'enumerazione AnalysisWarningCode . Spesso si verificano avvisi quando si tenta di usare una funzionalità che non è supportata dall'IInkAnalysisRecognizer usato da IInkAnalyzer .
Alcuni avvisi indicano che IInkAnalyzer non ha completato l'operazione di analisi. Per altre informazioni, vedere AnalysisWarningCode.
Esempio
Nell'esempio seguente viene illustrata una struttura di un gestore eventi per l'evento _IAnalysisEvents::Results . Il gestore controlla IAnalysisStatus::IsSuccessful. Se l'operazione di analisi genera avvisi, il gestore esegue l'iterazione tramite la raccolta di oggetti 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;
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows XP Tablet PC Edition [solo app desktop] |
Server minimo supportato |
Nessuno supportato |
Intestazione |
|
DLL |
|