StylusPlugIn.OnStylusMove(RawStylusInput) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
タブレット ペンがデジタイザー上で移動したときにペン スレッド上で発生します。
protected:
virtual void OnStylusMove(System::Windows::Input::StylusPlugIns::RawStylusInput ^ rawStylusInput);
protected virtual void OnStylusMove (System.Windows.Input.StylusPlugIns.RawStylusInput rawStylusInput);
abstract member OnStylusMove : System.Windows.Input.StylusPlugIns.RawStylusInput -> unit
override this.OnStylusMove : System.Windows.Input.StylusPlugIns.RawStylusInput -> unit
Protected Overridable Sub OnStylusMove (rawStylusInput As RawStylusInput)
パラメーター
- rawStylusInput
- RawStylusInput
ペンからの入力に関する情報を格納する RawStylusInput。
例
次の例では、メソッドをオーバーライドする方法を OnStylusMove 示します。 インクを特定の StylusPlugIn 領域に制限する方法を作成するには、概要を StylusPlugIn 参照してください。
protected override void OnStylusMove(RawStylusInput rawStylusInput)
{
// Run the base class before modifying the data
base.OnStylusMove(rawStylusInput);
// Get the StylusPoints that have come in
StylusPointCollection stylusPoints = rawStylusInput.GetStylusPoints();
// Modify the (X,Y) data to move the points
// inside the acceptable input area, if necessary
for (int i = 0; i < stylusPoints.Count; i++)
{
StylusPoint sp = stylusPoints[i];
if (sp.X < 50) sp.X = 50;
if (sp.X > 250) sp.X = 250;
if (sp.Y < 50) sp.Y = 50;
if (sp.Y > 250) sp.Y = 250;
stylusPoints[i] = sp;
}
// Copy the modified StylusPoints back to the RawStylusInput
rawStylusInput.SetStylusPoints(stylusPoints);
}
Protected Overrides Sub OnStylusMove(ByVal rawStylusInput As RawStylusInput)
' Run the base class before we modify the data
MyBase.OnStylusMove(rawStylusInput)
' Get the StylusPoints that have come in
Dim stylusPoints As StylusPointCollection = rawStylusInput.GetStylusPoints()
' Modify the (X,Y) data to move the points
' inside the acceptable input area, if necessary.
Dim i As Integer
For i = 0 To stylusPoints.Count - 1
Dim sp As StylusPoint = stylusPoints(i)
If sp.X < 50 Then
sp.X = 50
End If
If sp.X > 250 Then
sp.X = 250
End If
If sp.Y < 50 Then
sp.Y = 50
End If
If sp.Y > 250 Then
sp.Y = 250
End If
stylusPoints(i) = sp
Next i
' Copy the modified StylusPoints back to the RawStylusInput.
rawStylusInput.SetStylusPoints(stylusPoints)
End Sub
注釈
このメソッドはペン スレッドで発生するため、パフォーマンスに影響を与えないように、このメソッドの作業を最小限に抑えます。