InkAnalyzer.Abort メソッド
現在の分析処理をキャンセルします。
名前空間 : Microsoft.Ink
アセンブリ : Microsoft.Ink.Analysis (Microsoft.Ink.Analysis.dll 内)
構文
'宣言
Public Function Abort As AnalysisRegion
'使用
Dim instance As InkAnalyzer
Dim returnValue As AnalysisRegion
returnValue = instance.Abort()
public AnalysisRegion Abort()
public:
AnalysisRegion^ Abort()
public AnalysisRegion Abort()
public function Abort() : AnalysisRegion
戻り値
型 : Microsoft.Ink.AnalysisRegion
現在の分析処理のダーティ領域。
解説
このメソッドが呼び出されると、InkAnalyzer はキャンセルされた処理のイベントの発生を停止します。バックグラウンド分析処理がキャンセルされた場合、このメソッドは InkAnalyzer が処理を停止するまで、非同期で実行されます。
進行中の分析処理がない場合、Abort は空の分析領域を返します。
進行中の分析処理が 1 つある場合、Abort は処理をキャンセルします。
同期分析処理と非同期分析処理の両方が進行中の場合、Abort は同期処理をキャンセルします。
このメソッドが同じ分析処理で複数回呼び出された場合、最初の呼び出しでは処理のダーティ領域が返され、その後の呼び出しでは空の領域が返されます。
アプリケーションが InkAnalyzer のデータ構造と同期されている独自のデータ構造を保持している場合、Abort を呼び出すと、ドキュメントに結果の一部が含まれたままになります。これを回避するには、InkAnalyzer が InkAnalyzerStateChanging イベントを発生させたときと InkAnalyzer が IntermediateResultsUpdated または ResultsUpdated イベントを発生させたときの間に、Abort を呼び出さないでください。
アプリケーション データと InkAnalyzer の同期の詳細については、「Data Proxy with Ink Analysis」を参照してください。
例
この例では、InkAnalyzer.Activity イベントを処理するイベント ハンドラを定義しています。分析処理をキャンセルする必要がある場合、イベント ハンドラはイベントを生成した InkAnalyzer の Abort を呼び出し、InkAnalyzer オブジェクトの DirtyRegion を更新します。
''' <summary>
''' The ink analyzer's Activity event handler.
''' </summary>
''' <param name="sender">The source of the event.</param>
''' <param name="e">The event data.</param>
Sub theInkAnalyzer_Activity(ByVal sender As Object, ByVal e As EventArgs)
Dim abortAnalysis As Boolean = False
' Check if the analysis operation should be canceled.
' Abort analysis if the flag to do so is set.
If abortAnalysis Then
' Get the InkAnalyzer that raised the Activity event.
Dim theInkAnalyzer As Microsoft.Ink.InkAnalyzer = _
DirectCast(sender, Microsoft.Ink.InkAnalyzer)
' Abort the analysis and get the region that was being analyzed.
Dim theAnalysisRegion As Microsoft.Ink.AnalysisRegion = _
theInkAnalyzer.Abort()
' Add the region that was being analyzed to the analyzer's dirty region.
theInkAnalyzer.DirtyRegion.Union(theAnalysisRegion)
End If
End Sub 'theInkAnalyzer_Activity
/// <summary>
/// The ink analyzer's Activity event handler.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The event data.</param>
void theInkAnalyzer_Activity(object sender, EventArgs e)
{
bool abortAnalysis = false;
// Check if the analysis operation should be canceled.
// Abort analysis if the flag to do so is set.
if (abortAnalysis)
{
// Get the InkAnalyzer that raised the Activity event.
Microsoft.Ink.InkAnalyzer theInkAnalyzer =
sender as Microsoft.Ink.InkAnalyzer;
// Abort the analysis and get the region that was being analyzed.
Microsoft.Ink.AnalysisRegion theAnalysisRegion = theInkAnalyzer.Abort();
// Add the region that was being analyzed to the analyzer's dirty region.
theInkAnalyzer.DirtyRegion.Union(theAnalysisRegion);
}
}
プラットフォーム
Windows Vista
.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。
バージョン情報
.NET Framework
サポート対象 : 3.0