ContextNode オブジェクトが、指定された基準を満たすかどうかを評価するために使用される関数を表します。
名前空間 : Microsoft.Ink
アセンブリ : Microsoft.Ink.Analysis (Microsoft.Ink.Analysis.dll 内)
構文
'宣言
Public Delegate Function MatchesCriteriaCallback ( _
visitingNode As ContextNode, _
data As Object _
) As Boolean
'使用
Dim instance As New MatchesCriteriaCallback(AddressOf HandlerMethod)
public delegate bool MatchesCriteriaCallback(
ContextNode visitingNode,
Object data
)
public delegate bool MatchesCriteriaCallback(
ContextNode^ visitingNode,
Object^ data
)
/** @delegate */
public delegate boolean MatchesCriteriaCallback(
ContextNode visitingNode,
Object data
)
JScript では、デリゲートは使用できません。
パラメータ
- visitingNode
型 : Microsoft.Ink.ContextNode
基準に対して確認される ContextNode オブジェクト。
- data
型 : System.Object
基準に使用可能なオプション データ。
戻り値
型 : System.Boolean
visitingNode オブジェクトが基準に一致するかどうか。
例
次の例では、整数 yValue を使用することにより、MatchesCriteriaCallBack のデリゲート関数 LineIsLowerThan で指定された基準を満たす、InkAnalyzer、theInkAnalyzer 内の ContextNode オブジェクトのコレクションを検出します。
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 であり、境界ボックスの最下部が渡される整数値よりも低い場合、LineIsLowerThan は、true を返します (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