StylusPoint StylusPoint StylusPoint StylusPoint Struct

定義

表示從數位板和手寫筆收集的單一資料點 (Data Point)。Represents a single data point collected from the digitizer and stylus.

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)
繼承
StylusPointStylusPointStylusPointStylusPoint
實作

範例

下列範例會取得StylusPoint StylusPointCollection中每個的屬性名稱和值。The following example gets property names and values for each StylusPoint in a StylusPointCollection. 這個範例假設有一個TextBlock呼叫。 packetOutputThis example assumes that there is a TextBlock called 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

備註

StylusPoint使用者使用數位板輸入筆墨時, 會收集資料。A StylusPoint collects data when a user inputs ink using the digitizer. 由於數位壁報告的資訊StylusPoint會根據製造商而有所不同, 因此中的屬性可能會有所不同。Because the information that a digitizer reports differs depending on the manufacturer, the properties within a StylusPoint can vary. 若要判斷屬性是否在中StylusPoint, 請HasProperty呼叫方法。To determine whether a property is in the StylusPoint, call the HasProperty method. 屬性包含, 其指定中的StylusPoint屬性。 StylusPointDescription DescriptionThe Description property contains a StylusPointDescription that specifies which properties are in the StylusPoint. 所有StylusPoint物件都包含指定 (x, y) 座標和壓力的屬性。All StylusPoint objects contain properties that specify the (x, y) coordinates, as well as the pressure.

建構函式

StylusPoint(Double, Double) StylusPoint(Double, Double) StylusPoint(Double, Double) StylusPoint(Double, Double)

使用指定的 (x, y) 座標,初始化 StylusPoint 類別的新執行個體。Initializes a new instance of the StylusPoint class using specified (x, y) coordinates.

StylusPoint(Double, Double, Single) StylusPoint(Double, Double, Single) StylusPoint(Double, Double, Single) StylusPoint(Double, Double, Single)

使用指定的 (x, y) 座標和壓力,初始化 StylusPoint 類別的新執行個體。Initializes a new instance of the StylusPoint class using specified (x, y) coordinates and pressure.

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

使用指定的 (x, y) 座標、pressureFactor,和 StylusPointDescription 中指定的其他參數,初始化 StylusPoint 類別的新執行個體。Initializes a new instance of the StylusPoint class using specified (x, y) coordinates, a pressureFactor, and additional parameters specified in the StylusPointDescription.

欄位

MaxXY MaxXY MaxXY MaxXY

指定一對 (x, y) 座標的最大有效值。Specifies the largest valid value for a pair of (x, y) coordinates.

MinXY MinXY MinXY MinXY

指定一對 (x, y) 座標的最小有效值。Specifies the smallest valid value for a pair of (x, y) coordinates.

屬性

Description Description Description Description

取得或設定 StylusPointDescription,它指定儲存在 StylusPoint 中的屬性。Gets or sets the StylusPointDescription that specifies the properties stored in the StylusPoint.

PressureFactor PressureFactor PressureFactor PressureFactor

取得或設定一個介於 0 和 1 之間的值,這個值反映在建立 StylusPoint 時手寫筆套用到數位板介面的壓力總量。Gets or sets a value between 0 and 1 that reflects the amount of pressure the stylus applies to the digitizer's surface when the StylusPoint is created.

X X X X

取得或設定 StylusPoint 的 X 座標值。Gets or sets the value for the x-coordinate of the StylusPoint.

Y Y Y Y

取得或設定 StylusPoint 的 Y 座標。Gets or sets the y-coordinate of the StylusPoint.

方法

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

傳回值,這個值表示指定的物件是否等於 StylusPointReturns a value indicating whether the specified object is equal to the StylusPoint.

Equals(StylusPoint) Equals(StylusPoint) Equals(StylusPoint) Equals(StylusPoint)

傳回布林值,這個值表示指定的 StylusPoint 是否等於目前的 StylusPointReturns a Boolean value that indicates whether the specified StylusPoint is equal to the current StylusPoint.

Equals(StylusPoint, StylusPoint) Equals(StylusPoint, StylusPoint) Equals(StylusPoint, StylusPoint) Equals(StylusPoint, StylusPoint)

傳回布林值,這個值表示兩個指定的 StylusPoint 物件是否相等。Returns a Boolean value that indicates whether the two specified StylusPoint objects are equal.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

傳回這個執行個體的雜湊碼。Returns the hash code for this instance.

GetPropertyValue(StylusPointProperty) GetPropertyValue(StylusPointProperty) GetPropertyValue(StylusPointProperty) GetPropertyValue(StylusPointProperty)

傳回指定之屬性的值。Returns the value of the specified property.

HasProperty(StylusPointProperty) HasProperty(StylusPointProperty) HasProperty(StylusPointProperty) HasProperty(StylusPointProperty)

傳回目前的 StylusPoint 是否內含指定的屬性。Returns whether the current StylusPoint contains the specified property.

SetPropertyValue(StylusPointProperty, Int32) SetPropertyValue(StylusPointProperty, Int32) SetPropertyValue(StylusPointProperty, Int32) SetPropertyValue(StylusPointProperty, Int32)

將指定的屬性設為指定的值。Sets the specified property to the specified value.

ToPoint() ToPoint() ToPoint() ToPoint()

StylusPoint 轉換成 PointConverts a StylusPoint to a Point.

運算子

Equality(StylusPoint, StylusPoint) Equality(StylusPoint, StylusPoint) Equality(StylusPoint, StylusPoint) Equality(StylusPoint, StylusPoint)

比較兩個指定的 StylusPoint 物件並判斷它們是否相等。Compares two specified StylusPoint objects and determines whether they are equal.

Explicit(StylusPoint to Point) Explicit(StylusPoint to Point) Explicit(StylusPoint to Point) Explicit(StylusPoint to Point)

將指定的 StylusPoint 轉型為 PointCasts the specified StylusPoint to a Point.

Inequality(StylusPoint, StylusPoint) Inequality(StylusPoint, StylusPoint) Inequality(StylusPoint, StylusPoint) Inequality(StylusPoint, StylusPoint)

傳回布林值,這個值表示指定的 StylusPoint 物件是否不相等。Returns a Boolean value which indicates whether the specified StylusPoint objects are unequal.

適用於