RecognitionResult.SetResultOnStrokes メソッド
RecognitionResult オブジェクトを、結果の生成に使用された Strokes コレクションに割り当てます。
名前空間 : Microsoft.Ink
アセンブリ : Microsoft.Ink (Microsoft.Ink.dll 内)
構文
'宣言
Public Sub SetResultOnStrokes
'使用
Dim instance As RecognitionResult
instance.SetResultOnStrokes()
public void SetResultOnStrokes()
public:
void SetResultOnStrokes()
public void SetResultOnStrokes()
public function SetResultOnStrokes()
解説
すべての Strokes コレクションに自動的に認識結果を割り当てると、システムのパフォーマンスが低下する可能性があります。そのため、既定の設定では、結果が Strokes コレクションに結合されることはありません。結果を Strokes コレクションに割り当てるには、SetResultOnStrokes メソッドを呼び出す必要があります。Strokes コレクションの認識結果を返すには、Strokes コレクションの RecognitionResult プロパティを使用します。結果を Strokes コレクションに割り当てると、ストロークを CustomStrokes コレクションに保存できるようになります。このようなカスタム ストロークと、RecognitionResult を永続化して、後で取り出して使用することができます。
例
この例では、メニュー項目やボタンのクリックといったユーザーの操作に対応して同期認識が処理されます。まず、RecognizerContext オブジェクトの Strokes コレクションが、InkOverlay オブジェクトに関連付けられた Strokes コレクションから割り当てられ、ストロークの数がチェックされます。Strokes コレクションに少なくとも 1 つの Stroke オブジェクトが含まれる場合、Recognize メソッドの呼び出しにより認識処理が開始されます。認識に成功すると、対応する Strokes コレクションに RecognizerContext オブジェクトをアタッチするために SetResultOnStrokes メソッドが呼び出されます。最後に、名前付きコレクション CustomStrokes として Strokes コレクションが保存されます。これにより、アタッチされた RecognitionResult も保存されます。
' assign strokes collection from the collected strokes
Me.mRecognizerContext.Strokes = Me.mInkOverlay.Ink.Strokes
' check stroke count. Recognize() will throw exception if no strokes
If Me.mRecognizerContext.Strokes.Count > 0 Then
Dim status As RecognitionStatus
' perform the recognition
Dim rResult As RecognitionResult = Me.mRecognizerContext.Recognize(status)
' check status
If RecognitionStatus.NoError = status Then
' attach RecognitionResult to the Strokes collection
rResult.SetResultOnStrokes()
' save the strokes collection (with RecognitionResult attached)
Try
mInkOverlay.Ink.CustomStrokes.Add("customCollectionName", rResult.Strokes)
Catch ex As ArgumentException
' this exception is raised when the named collection already exists
End Try
End If
End If
// assign strokes collection from the collected strokes
this.mRecognizerContext.Strokes = this.mInkOverlay.Ink.Strokes;
// check stroke count. Recognize() will throw exception if no strokes
if (this.mRecognizerContext.Strokes.Count > 0)
{
RecognitionStatus status;
// perform the recognition
RecognitionResult rResult = this.mRecognizerContext.Recognize(out status);
// check status
if (RecognitionStatus.NoError == status)
{
// attach RecognitionResult to the Strokes collection
rResult.SetResultOnStrokes();
// save the strokes collection (with RecognitionResult attached)
try
{
mInkOverlay.Ink.CustomStrokes.Add("customCollectionName", rResult.Strokes);
}
catch (ArgumentException)
{
// this exception is raised when the named collection already exists
}
}
}
プラットフォーム
Windows Vista
.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。
バージョン情報
.NET Framework
サポート対象 : 3.0