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ždý StylusPoint v objektu StylusPointCollection. Tento příklad předpokládá, že existuje TextBlock volána 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

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

Konstruktory

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

Inicializuje novou instanci StylusPoint třídy pomocí zadaných pressureFactorsouřadnic (x, y), a a další parametry zadané v StylusPointDescription.

StylusPoint(Double, Double, Single)

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

StylusPoint(Double, Double)

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

Pole

Name Description
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

Name Description
Description

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

PressureFactor

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

X

Získá nebo nastaví hodnotu pro souřadnici StylusPointx .

Y

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

Metody

Name Description
Equals(Object)

Vrátí hodnotu určující, zda je zadaný objekt roven StylusPoint.

Equals(StylusPoint, StylusPoint)

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

Equals(StylusPoint)

Vrátí logickou hodnotu, která určuje, zda je zadaná StylusPoint hodnota rovna aktuálnímu StylusPoint.

GetHashCode()

Vrátí kód 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 StylusPoint .Point

Operátory

Name Description
Equality(StylusPoint, StylusPoint)

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

Explicit(StylusPoint to Point)

Přetypuje zadanou StylusPoint na .Point

Inequality(StylusPoint, StylusPoint)

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

Platí pro