InkAnalyzer.GetTextRangeFromNodes メソッド
ContextNode オブジェクトのコレクションに対応する、認識された文字列のテキスト範囲を検索します。
名前空間 : Microsoft.Ink
アセンブリ : Microsoft.Ink.Analysis (Microsoft.Ink.Analysis.dll 内)
構文
'宣言
Public Sub GetTextRangeFromNodes ( _
nodesToSearch As ContextNodeCollection, _
<OutAttribute> ByRef start As Integer, _
<OutAttribute> ByRef length As Integer _
)
'使用
Dim instance As InkAnalyzer
Dim nodesToSearch As ContextNodeCollection
Dim start As Integer
Dim length As Integer
instance.GetTextRangeFromNodes(nodesToSearch, _
start, length)
public void GetTextRangeFromNodes(
ContextNodeCollection nodesToSearch,
out int start,
out int length
)
public:
void GetTextRangeFromNodes(
ContextNodeCollection^ nodesToSearch,
[OutAttribute] int% start,
[OutAttribute] int% length
)
public void GetTextRangeFromNodes(
ContextNodeCollection nodesToSearch,
/** @attribute OutAttribute */ /** @ref */int start,
/** @attribute OutAttribute */ /** @ref */int length
)
public function GetTextRangeFromNodes(
nodesToSearch : ContextNodeCollection,
start : int,
length : int
)
パラメータ
- nodesToSearch
型 : Microsoft.Ink.ContextNodeCollection
テキスト範囲を検索する ContextNode オブジェクトのコレクション。
- start
型 : System.Int32%
このメソッドが返されるとき、start パラメータにはテキスト範囲の開始点を示す 32 ビット符号付き整数が含まれます。このパラメータは初期化せずに渡されます。
- length
型 : System.Int32%
このメソッドが返されるとき、length パラメータにはテキスト範囲の長さを示す 32 ビット符号付き整数が含まれます。このパラメータは初期化せずに渡されます。
解説
nodesToSearch に、隣接していない ContextNode オブジェクトが含まれる場合、このメソッドは、すべての ContextNode オブジェクトが含まれる最小のテキスト範囲を返します。
InkAnalyzer に関連付けられていない ContextNode が nodesToSearch に含まれる場合、このメソッドは System.ArgumentException をスローします。
例
この例では、System.Windows.Forms.TextBox、theResultsTextBox のテキストを、InkAnalyzer, theInkAnalyzer の認識文字列に設定する、メソッド SelectTextRangeFromNodes を定義します。次に、パラメータ theContextNodes の認識されたテキストに範囲が及ぶようにテキスト ボックス選択を設定します。
''' <summary>
''' Selects the text range in the TextBox, theResultsTextBox, that represents
''' the node ranges in theContextNodes.
''' </summary>
''' <param name="theContextNodes">
''' The nodes for which to select the text range.</param>
''' <remarks>
''' If <paramref name="theContextNodes"/> are not current context nodes
''' of the InkAnalyzer, theInkAnalyzer, then GetTextRangeFromNodes throws
''' an ArgumentException.
''' </remarks>
Private Sub SelectTextRangeFromNodes(ByVal theContextNodes As Microsoft.Ink.ContextNodeCollection)
' Set the text of theResultsTextBox.
Me.theResultsTextBox.Text = Me.theInkAnalyzer.GetRecognizedString()
' Get the text range for theContextNodes.
Dim theStart As Integer
Dim theLength As Integer
Try
Me.theInkAnalyzer.GetTextRangeFromNodes( _
theContextNodes, theStart, theLength)
' Check for common exceptions.
Catch ex As ArgumentException
Throw New ArgumentException( _
"Invalid ContextNodeCollection", "theContextNodes", ex)
End Try
' Select the text range in the TextBox.
Me.theResultsTextBox.Select(theStart, theLength)
Me.theResultsTextBox.Invalidate()
End Sub 'SelectTextRangeFromNodes
/// <summary>
/// Selects the text range in the TextBox, theResultsTextBox, that represents
/// the node ranges in theContextNodes.
/// </summary>
/// <param name="theContextNodes">
/// The nodes for which to select the text range.</param>
/// <remarks>
/// If <paramref name="theContextNodes"/> are not current context nodes
/// of the InkAnalyzer, theInkAnalyzer, then GetTextRangeFromNodes throws
/// an ArgumentException.
/// </remarks>
private void SelectTextRangeFromNodes(
Microsoft.Ink.ContextNodeCollection theContextNodes)
{
// Set the text of theResultsTextBox.
this.theResultsTextBox.Text = this.theInkAnalyzer.GetRecognizedString();
// Get the text range for theContextNodes.
int theStart;
int theLength;
try
{
this.theInkAnalyzer.GetTextRangeFromNodes(
theContextNodes, out theStart, out theLength);
}
// Check for common exceptions.
catch (ArgumentException ex)
{
throw new ArgumentException("Invalid ContextNodeCollection",
"theContextNodes", ex);
}
// Select the text range in the TextBox.
this.theResultsTextBox.Select(theStart, theLength);
this.theResultsTextBox.Invalidate();
}
プラットフォーム
Windows Vista
.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。
バージョン情報
.NET Framework
サポート対象 : 3.0