다음을 통해 공유


InkAnalyzer.Abort 메서드

업데이트: 2007년 11월

현재 분석 작업을 취소합니다.

네임스페이스:  System.Windows.Ink
어셈블리:  IAWinFX(IAWinFX.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

반환 값

형식: System.Windows.Ink.AnalysisRegion
현재 분석 작업의 변경 영역입니다.

설명

InkAnalyzer는 이 메서드가 호출되면 취소된 분석 작업에 대한 이벤트 발생을 중지합니다. 백그라운드 분석 작업이 취소되면 이 메서드는 InkAnalyzer가 작업을 중지할 때까지 비동기적으로 실행됩니다. 다음 조건을 고려하십시오.

  • 진행 중인 분석 작업이 없는 경우 Abort는 빈 분석 영역을 반환합니다.

  • 하나의 분석 작업이 진행 중인 경우 Abort는 작업을 취소합니다.

  • 동기 및 비동기 분석 작업이 모두 진행 중인 경우 Abort는 동기 작업을 취소합니다.

  • 이 메서드가 동일한 분석 작업에 대해 두 번 이상 호출되는 경우 첫 번째 호출은 작업에 대한 변경 영역을 반환하고 이후 호출은 빈 영역을 반환합니다.

  • 응용 프로그램에서 InkAnalyzer의 데이터 구조와 동기화되는 자체 데이터 구조를 유지하는 경우 Abort를 호출하면 부분적인 결과만 포함된 문서가 생성될 수 있습니다. 부분적인 결과를 피하려면 InkAnalyzerInkAnalyzerStateChanging 이벤트를 발생시키는 시간부터 InkAnalyzer가 IntermediateResults() 이벤트 또는 Results() 이벤트를 발생시키는 시간까지 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 InkAnalyzer = sender

        ' Abort the analysis and get the region that was being analyzed.
        Dim theAnalysisRegion As 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.
        InkAnalyzer theInkAnalyzer =
            sender as InkAnalyzer;

        // Abort the analysis and get the region that was being analyzed.
        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에서 지원

참고 항목

참조

InkAnalyzer 클래스

InkAnalyzer 멤버

System.Windows.Ink 네임스페이스

InkAnalyzer.Analyze

InkAnalyzerBaseBackgroundAnalyze()

InkAnalyzer.DirtyRegion