Comparteix a través de


StylusPoint Estructura

Definición

Representa un único punto de datos recopilado desde el digitalizador y el lápiz óptico.

public value class StylusPoint : IEquatable<System::Windows::Input::StylusPoint>
public struct StylusPoint : IEquatable<System.Windows.Input.StylusPoint>
type StylusPoint = struct
Public Structure StylusPoint
Implements IEquatable(Of StylusPoint)
Herencia
StylusPoint
Implementaciones

Ejemplos

En el ejemplo siguiente se obtienen los nombres de propiedad y los valores de cada StylusPoint en .StylusPointCollection En este ejemplo se supone que hay un TextBlock denominado packetOutput.

private void WriteStylusPointValues(StylusPointCollection points)
{
    StylusPointDescription pointsDescription = points.Description;

    ReadOnlyCollection<StylusPointPropertyInfo> properties = 
        pointsDescription.GetStylusPointProperties();
    
    // Write the name and value of each property in
    // every stylus point.
    StringWriter packetWriter = new StringWriter();
    packetWriter.WriteLine("{0} stylus points", points.Count.ToString());
    foreach (StylusPoint stylusPoint in points)
    {
        packetWriter.WriteLine("Stylus Point info");
        packetWriter.WriteLine("X: {0}", stylusPoint.X.ToString());
        packetWriter.WriteLine("Y: {0}", stylusPoint.Y.ToString());
        packetWriter.WriteLine("Pressure: {0}", stylusPoint.PressureFactor.ToString());

        // Get the property name and value for each StylusPoint.
        // Note that this loop reports the X, Y, and pressure values differantly than 
        // getting their values above.
        for (int i = 0; i < pointsDescription.PropertyCount; ++i)
        {
            StylusPointProperty currentProperty = properties[i];

            // GetStylusPointPropertyName is defined below and returns the
            // name of the property.
            packetWriter.Write("{0}: ", GetStylusPointPropertyName(currentProperty));
            packetWriter.WriteLine(stylusPoint.GetPropertyValue(currentProperty).ToString());
        }
        packetWriter.WriteLine();
    }

    packetOutput.Text = packetWriter.ToString();
}
Private Sub WriteStylusPointValues(ByVal points As StylusPointCollection) 
    Dim pointsDescription As StylusPointDescription = points.Description
    
    Dim properties As ReadOnlyCollection(Of StylusPointPropertyInfo) = _
                            pointsDescription.GetStylusPointProperties()
    
    ' Write the name and value of each property in
    ' every stylus point.
    Dim packetWriter As New StringWriter()

    packetWriter.WriteLine("{0} stylus points", points.Count.ToString())

    For Each stylusPoint As StylusPoint In points

        packetWriter.WriteLine("Stylus Point info")
        packetWriter.WriteLine("X: {0}", stylusPoint.X.ToString())
        packetWriter.WriteLine("Y: {0}", stylusPoint.Y.ToString())
        packetWriter.WriteLine("Pressure: {0}", stylusPoint.PressureFactor.ToString())

        ' Get the property name and value for each StylusPoint.
        ' Note that this loop reports the X, Y, and pressure values differantly than 
        ' getting their values above.
        For i As Integer = 0 To pointsDescription.PropertyCount - 1

            Dim currentProperty As StylusPointProperty = properties(i)

            ' GetStylusPointPropertyName is defined below and returns the
            ' name of the property.
            packetWriter.Write("{0}: ", GetStylusPointPropertyName(currentProperty))
            packetWriter.WriteLine(stylusPoint.GetPropertyValue(currentProperty).ToString())
        Next i

        packetWriter.WriteLine()

    Next stylusPoint

    packetOutput.Text = packetWriter.ToString()

End Sub
// Use reflection to get the name of currentProperty.
private string GetStylusPointPropertyName(StylusPointProperty currentProperty)
{
    Guid guid = currentProperty.Id;

    // Iterate through the StylusPointProperties to find the StylusPointProperty
    // that matches currentProperty, then return the name.
    foreach (FieldInfo theFieldInfo
        in typeof(StylusPointProperties).GetFields())
    {
        StylusPointProperty property = (StylusPointProperty) theFieldInfo.GetValue(currentProperty);
        if (property.Id == guid)
        {
            return theFieldInfo.Name;
        }
    }
    return "Not found";
}
' Use reflection to get the name of currentProperty.
Private Function GetStylusPointPropertyName(ByVal currentProperty As StylusPointProperty) As String 
    Dim guid As Guid = currentProperty.Id
    
    ' Iterate through the StylusPointProperties to find the StylusPointProperty
    ' that matches currentProperty, then return the name.
    Dim theFieldInfo As FieldInfo

    For Each theFieldInfo In GetType(StylusPointProperties).GetFields()

        Dim pointProperty As StylusPointProperty = _
            CType(theFieldInfo.GetValue(currentProperty), StylusPointProperty)

        If pointProperty.Id = guid Then
            Return theFieldInfo.Name
        End If

    Next theFieldInfo

    Return "Not found"

End Function 'GetStylusPointPropertyName

Comentarios

StylusPoint Un recopila datos cuando un usuario escribe entrada de lápiz mediante el digitalizador. Dado que la información que informa un digitalizador difiere en función del fabricante, las propiedades de un StylusPoint elemento pueden variar. Para determinar si una propiedad está en StylusPoint, llame al HasProperty método . La Description propiedad contiene un StylusPointDescription objeto que especifica qué propiedades están en .StylusPoint Todos los StylusPoint objetos contienen propiedades que especifican las coordenadas (x, y), así como la presión.

Constructores

StylusPoint(Double, Double)

Inicializa una nueva instancia de la clase StylusPoint mediante las coordenadas especificadas (x, y).

StylusPoint(Double, Double, Single)

Inicializa una nueva instancia de la clase StylusPoint utilizando las coordenadas (x, y) y la presión especificadas.

StylusPoint(Double, Double, Single, StylusPointDescription, Int32[])

Inicializa una nueva instancia de la clase StylusPoint utilizando las coordenadas especificadas (x, y), un pressureFactor y parámetros adicionales especificados en StylusPointDescription.

Campos

MaxXY

Especifica el valor válido más alto en un par de coordenadas (x, y).

MinXY

Especifica el valor válido más bajo en un par de coordenadas (x, y).

Propiedades

Description

Obtiene o establece el objeto StylusPointDescription que especifica las propiedades almacenadas en StylusPoint.

PressureFactor

Obtiene o establece un valor entre 0 y 1 que refleja la cantidad de presión que el lápiz óptico aplica sobre la superficie del digitalizador cuando se crea StylusPoint.

X

Obtiene o establece el valor de la coordenada x de StylusPoint.

Y

Obtiene o establece la coordenada y de StylusPoint.

Métodos

Equals(Object)

Devuelve un valor que indica si el objeto especificado es igual a StylusPoint.

Equals(StylusPoint)

Devuelve un valor booleano que indica si el objeto StylusPoint especificado es igual al objeto StylusPoint actual.

Equals(StylusPoint, StylusPoint)

Devuelve un valor booleano que indica si los dos objetos StylusPoint especificados son iguales.

GetHashCode()

Devuelve el código hash de esta instancia.

GetPropertyValue(StylusPointProperty)

Devuelve el valor de la propiedad especificada.

HasProperty(StylusPointProperty)

Devuelve un valor que indica si el objeto StylusPoint actual contiene la propiedad especificada.

SetPropertyValue(StylusPointProperty, Int32)

Establece la propiedad especificada en el valor especificado.

ToPoint()

Convierte StylusPoint en Point.

Operadores

Equality(StylusPoint, StylusPoint)

Compara dos objetos StylusPoint especificados y determina si son iguales.

Explicit(StylusPoint to Point)

Convierte el objeto StylusPoint especificado en Point.

Inequality(StylusPoint, StylusPoint)

Devuelve un valor booleano que indica si los dos objetos StylusPoint especificados son diferentes.

Se aplica a