Sdílet prostřednictvím


StylusPoint Struktura

Definice

Představuje jeden datový bod shromážděný z digitizátoru a pera.

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)
Dědičnost
StylusPoint
Implementuje

Příklady

Následující příklad získá názvy vlastností a hodnoty pro každou StylusPoint vlastnost v objektu StylusPointCollection. V tomto příkladu se předpokládá, že existuje TextBlock s názvem 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

Poznámky

Nástroj StylusPoint shromažďuje data, když uživatel zadá rukopis pomocí digitizátoru. Vzhledem k tomu, že informace, které digitizátor hlásí, se liší v závislosti na výrobci, mohou se vlastnosti v rámci objektu StylusPoint lišit. Chcete-li zjistit, zda je vlastnost v StylusPoint, zavolejte metodu HasProperty . Vlastnost Description obsahuje vlastnost StylusPointDescription , která určuje, které vlastnosti jsou v objektu StylusPoint. Všechny StylusPoint objekty obsahují vlastnosti, které určují souřadnice (x, y) a také tlak.

Konstruktory

StylusPoint(Double, Double)

Inicializuje novou instanci třídy pomocí zadaných StylusPoint souřadnic (x, y).

StylusPoint(Double, Double, Single)

Inicializuje novou instanci třídy pomocí zadaných StylusPoint souřadnic (x, y) a tlaku.

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

Inicializuje novou instanci třídy pomocí zadaných StylusPoint souřadnic pressureFactor(x, y), a dalších parametrů zadaných v objektu StylusPointDescription.

Pole

MaxXY

Určuje největší platnou hodnotu pro dvojici souřadnic (x, y).

MinXY

Určuje nejmenší platnou hodnotu pro dvojici souřadnic (x, y).

Vlastnosti

Description

Získá nebo nastaví vlastnost StylusPointDescription , která určuje vlastnosti uložené v StylusPoint.

PressureFactor

Získá nebo nastaví hodnotu mezi 0 a 1, která odráží množství tlaku pera aplikuje na povrch digitalizátoru při StylusPoint vytvoření.

X

Získá nebo nastaví hodnotu souřadnice x objektu StylusPoint.

Y

Získá nebo nastaví souřadnici StylusPointy .

Metody

Equals(Object)

Vrátí hodnotu označující, zda se zadaný objekt rovná hodnotě StylusPoint.

Equals(StylusPoint)

Vrátí logickou hodnotu, která označuje, zda je zadaná StylusPoint hodnota rovna aktuální StylusPointhodnotě .

Equals(StylusPoint, StylusPoint)

Vrátí logickou hodnotu, která označuje, zda jsou si dva zadané StylusPoint objekty rovny.

GetHashCode()

Vrátí hodnotu hash pro tuto instanci.

GetPropertyValue(StylusPointProperty)

Vrátí hodnotu zadané vlastnosti.

HasProperty(StylusPointProperty)

Vrátí, zda aktuální StylusPoint obsahuje zadanou vlastnost.

SetPropertyValue(StylusPointProperty, Int32)

Nastaví zadanou vlastnost na zadanou hodnotu.

ToPoint()

Převede na StylusPointPoint.

Operátory

Equality(StylusPoint, StylusPoint)

Porovná dva zadané StylusPoint objekty a určí, zda jsou si rovny.

Explicit(StylusPoint to Point)

Přetypuje zadanou StylusPointPointhodnotu na .

Inequality(StylusPoint, StylusPoint)

Vrátí logickou hodnotu, která označuje, zda jsou zadané StylusPoint objekty nerovné.

Platí pro