Compartir a través de


StylusPlugIn.OnStylusDown(RawStylusInput) Método

Definición

Se produce en un subproceso del grupo de subprocesos del lápiz cuando el lápiz de Tablet PC toca el digitalizador.

protected:
 virtual void OnStylusDown(System::Windows::Input::StylusPlugIns::RawStylusInput ^ rawStylusInput);
protected virtual void OnStylusDown (System.Windows.Input.StylusPlugIns.RawStylusInput rawStylusInput);
abstract member OnStylusDown : System.Windows.Input.StylusPlugIns.RawStylusInput -> unit
override this.OnStylusDown : System.Windows.Input.StylusPlugIns.RawStylusInput -> unit
Protected Overridable Sub OnStylusDown (rawStylusInput As RawStylusInput)

Parámetros

rawStylusInput
RawStylusInput

RawStylusInput que contiene información sobre la entrada del lápiz.

Ejemplos

En el ejemplo siguiente se muestra cómo invalidar el OnStylusDown método . Para crear un StylusPlugIn objeto que restrinja la entrada de lápiz a un área determinada, consulte la StylusPlugIn información general.

protected override void OnStylusDown(RawStylusInput rawStylusInput)
{
    // Run the base class before modifying the data
    base.OnStylusDown(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 OnStylusDown(ByVal rawStylusInput As RawStylusInput) 
    ' Run the base class before we modify the data
    MyBase.OnStylusDown(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

Comentarios

Este método se produce en un subproceso de lápiz, por lo que minimiza el trabajo en este método para evitar que afecte al rendimiento.

Se aplica a