Ler em inglês

Compartilhar via


StylusPoint Estrutura

Definição

Representa um único ponto de dados coletado do digitalizador e da caneta.

C#
public struct StylusPoint : IEquatable<System.Windows.Input.StylusPoint>
Herança
StylusPoint
Implementações

Exemplos

O exemplo a seguir obtém nomes de propriedade e valores para cada StylusPoint um em um StylusPointCollection. Este exemplo pressupõe que haja um TextBlock chamado packetOutput.

C#
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();
}
C#
// 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";
}

Comentários

Um StylusPoint coleta dados quando um usuário inseriu tinta usando o digitalizador. Como as informações que um digitalizador relata diferem dependendo do fabricante, as propriedades dentro de um StylusPoint podem variar. Para determinar se uma propriedade está no StylusPoint, chame o HasProperty método . A Description propriedade contém um StylusPointDescription que especifica quais propriedades estão no StylusPoint. Todos os StylusPoint objetos contêm propriedades que especificam as coordenadas (x, y), bem como a pressão.

Construtores

StylusPoint(Double, Double)

Inicializa uma nova instância da classe StylusPoint usando as coordenadas especificadas (x, y).

StylusPoint(Double, Double, Single)

Inicializa uma nova instância da classe StylusPoint usando as coordenadas (x, y) e a pressão especificadas.

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

Inicializa uma nova instância da classe StylusPoint usando as coordenadas especificadas (x, y), um pressureFactor e parâmetros adicionais especificados na StylusPointDescription.

Campos

MaxXY

Especifica o maior valor válido para um par de coordenadas (x, y).

MinXY

Especifica o menor valor válido para um par de coordenadas (x, y).

Propriedades

Description

Obtém ou define a StylusPointDescription que especifica as propriedades armazenadas no StylusPoint.

PressureFactor

Obtém ou define um valor entre 0 e 1 que reflete a quantidade de pressão que a caneta aplica à superfície do digitalizador quando o StylusPoint é criado.

X

Obtém ou define o valor da coordenada x do StylusPoint.

Y

Obtém ou define a coordenada y do StylusPoint.

Métodos

Equals(Object)

Retorna um valor que indica se o objeto especificado é igual ao StylusPoint.

Equals(StylusPoint)

Retorna um valor booliano que indica se o StylusPoint especificado é igual ao StylusPoint atual.

Equals(StylusPoint, StylusPoint)

Retorna um valor booliano que indica se os dois objetos StylusPoint especificados são iguais.

GetHashCode()

Retorna o código hash para a instância.

GetPropertyValue(StylusPointProperty)

Retorna o valor da propriedade especificada.

HasProperty(StylusPointProperty)

Retorna se o StylusPoint atual contém a propriedade especificada.

SetPropertyValue(StylusPointProperty, Int32)

Define a propriedade especificada com o valor especificado.

ToPoint()

Converte uma StylusPoint em uma Point.

Operadores

Equality(StylusPoint, StylusPoint)

Compara dois objetos StylusPoint especificados e determina se eles são iguais.

Explicit(StylusPoint to Point)

Converte o StylusPoint especificado em um Point.

Inequality(StylusPoint, StylusPoint)

Retorna um valor booliano que indica se os objetos StylusPoint especificados são diferentes.

Aplica-se a

Produto Versões
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9