指定した基準に一致する ContextNode オブジェクトをすべて返します。
名前空間 : Microsoft.Ink
アセンブリ : Microsoft.Ink.Analysis (Microsoft.Ink.Analysis.dll 内)
構文
'宣言
Public Function FindNodes ( _
criteria As MatchesCriteriaCallback, _
data As Object _
) As ContextNodeCollection
'使用
Dim instance As InkAnalyzer
Dim criteria As MatchesCriteriaCallback
Dim data As Object
Dim returnValue As ContextNodeCollection
returnValue = instance.FindNodes(criteria, _
data)
public ContextNodeCollection FindNodes(
MatchesCriteriaCallback criteria,
Object data
)
public:
ContextNodeCollection^ FindNodes(
MatchesCriteriaCallback^ criteria,
Object^ data
)
public ContextNodeCollection FindNodes(
MatchesCriteriaCallback criteria,
Object data
)
public function FindNodes(
criteria : MatchesCriteriaCallback,
data : Object
) : ContextNodeCollection
パラメータ
- criteria
型 : Microsoft.Ink.MatchesCriteriaCallback
ContextNode オブジェクトが、指定された基準を満たすかどうかを判断するデリゲート関数。
- data
型 : System.Object
デリゲート関数に渡すことができるオプションの追加データ。このメソッドは、呼び出しごとにこのデータをデリゲートに渡し、変更や検査は行いません。
戻り値
型 : Microsoft.Ink.ContextNodeCollection
指定した基準に一致するすべての ContextNode オブジェクトが含まれる ContextNodeCollection。
例
次の例では、LineIsLowerThan デリゲートで指定された基準を満たす、InkAnalyzer、theInkAnalyzer 内のコンテキスト ノードのコレクションを検出します。32 ビット符号付き整数 yValue が LineIsLowerThan デリゲートに渡されます。
Dim lineIsLowerThanCallback As _
New Microsoft.Ink.MatchesCriteriaCallback(AddressOf LineIsLowerThan)
Dim nodesBelowYValue As ContextNodeCollection = _
theInkAnalyzer.FindNodes(lineIsLowerThanCallback, yValue)
Microsoft.Ink.MatchesCriteriaCallback
lineIsLowerThanCallback = new Microsoft.Ink.MatchesCriteriaCallback(LineIsLowerThan);
ContextNodeCollection nodesBelowYValue =
theInkAnalyzer.FindNodes(lineIsLowerThanCallback, yValue);
次の例では、ContextNode が LineNode であり、境界ボックスの最下部が渡される整数値よりも小さい場合に true を返す LineIsLowerThan メソッドを定義します (y 値が整数値よりも大きい場合は、画面のより低い位置に表示されることに注意してください)。そのため、nodesBelowYValue コレクションには、値 yValue よりも下のストロークが存在するすべての行が含まれます。
Public Function LineIsLowerThan(ByVal node As Microsoft.Ink.ContextNode, _
ByVal data As Object) As Boolean
' Return false if not a line
If Not TypeOf node Is LineNode Then
Return False
End If
' Check if bottom is lower than yValue passed in
Dim yValue As Integer = Fix(data)
Return node.Location.GetBounds().Bottom > yValue
End Function 'LineIsLowerThan
public bool LineIsLowerThan(Microsoft.Ink.ContextNode node, object data)
{
// Return false if not a line
if (!(node is LineNode))
return false;
// Check if bottom is lower than yValue passed in
int yValue = (int)data;
return (node.Location.GetBounds().Bottom > yValue);
}
プラットフォーム
Windows Vista
.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。
バージョン情報
.NET Framework
サポート対象 : 3.0