InkAnalyzer.Analyze 方法
执行同步墨迹分析。
命名空间: Microsoft.Ink
程序集: Microsoft.Ink.Analysis(在 Microsoft.Ink.Analysis.dll 中)
语法
声明
Public Function Analyze As AnalysisStatus
用法
Dim instance As InkAnalyzer
Dim returnValue As AnalysisStatus
returnValue = instance.Analyze()
public AnalysisStatus Analyze()
public:
AnalysisStatus^ Analyze()
public AnalysisStatus Analyze()
public function Analyze() : AnalysisStatus
返回值
类型:Microsoft.Ink.AnalysisStatus
分析操作的状态。
备注
此方法启动同步墨迹分析操作。墨迹分析包括布局分析、书写和绘制分类以及手写识别。此操作在分析操作完成之后返回。InkAnalyzer 仅分析位于其 DirtyRegion 内的墨迹。
此方法将 InkAnalyzer 对象的 DirtyRegion 设置为空区域。如果另一个线程添加了尚未进行分析的笔画数据,则 InkAnalyzer 会在分析的协调阶段将该未分析笔画的边界框添加到其 DirtyRegion。
InkAnalyzer 在响应此方法时不引发 ResultsUpdated 和 IntermediateResultsUpdated 事件。
若要修改执行墨迹分析的方式,请使用 InkAnalyzer 对象的 AnalysisModes 属性。
有关墨迹分析的更多信息,请参见Ink Analysis Overview。
示例
此示例为菜单项的单击事件定义事件处理程序。如果 InkAnalyzer 对象的 DirtyRegion 不为空,则该事件处理程序执行同步墨迹分析。该事件处理程序附加一个 InkAnalyzer.Activity 事件处理程序并执行分析。然后,移除附加的事件处理程序并调用帮助器方法 UpdateResults 用分析结果更新窗体。
''' <summary>
''' The Ink menu's Analyze menu item's Click event handler.
''' </summary>
''' <param name="sender">The source of the event.</param>
''' <param name="e">The event data.</param>
Private Sub theInkAnalyzeMenuItem_Click( _
ByVal sender As Object, ByVal e As EventArgs) _
Handles theInkAnalyzeMenuItem.Click
' Only start ink analysis if the dirty region is not empty.
If Not Me.theInkAnalyzer.DirtyRegion.IsEmpty Then
' Attach an activity event handler.
AddHandler Me.theInkAnalyzer.Activity, AddressOf theInkAnalyzer_Activity
' Perform the ink analysis.
Dim theStatus As Microsoft.Ink.AnalysisStatus = Me.theInkAnalyzer.Analyze()
' Remove the activity event handler.
RemoveHandler Me.theInkAnalyzer.Activity, AddressOf theInkAnalyzer_Activity
' Update the analysis results on the form.
Me.UpdateResults(theStatus)
End If
End Sub 'theInkAnalyzeMenuItem_Click
/// <summary>
/// The Ink menu's Analyze menu item's Click event handler.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The event data.</param>
private void theInkAnalyzeMenuItem_Click(object sender, EventArgs e)
{
// Only start ink analysis if the dirty region is not empty.
if (!this.theInkAnalyzer.DirtyRegion.IsEmpty)
{
// Attach an activity event handler.
this.theInkAnalyzer.Activity +=
new Microsoft.Ink.ActivityEventHandler(
theInkAnalyzer_Activity);
// Perform the ink analysis.
Microsoft.Ink.AnalysisStatus theStatus =
this.theInkAnalyzer.Analyze();
// Remove the activity event handler.
this.theInkAnalyzer.Activity -=
new Microsoft.Ink.ActivityEventHandler(
theInkAnalyzer_Activity);
// Update the analysis results on the form.
this.UpdateResults(theStatus);
}
}
平台
Windows Vista
.NET Framework 和 .NET Compact Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。
版本信息
.NET Framework
受以下版本支持:3.0