StylusPoint Struct-datatyp
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar en enda datapunkt som samlas in från digitaliseraren och pennan.
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)
- Arv
- Implementeringar
Exempel
I följande exempel hämtas egenskapsnamn och värden för var StylusPoint och en i en StylusPointCollection. Det här exemplet förutsätter att det finns ett TextBlock som heter 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
Kommentarer
A StylusPoint samlar in data när en användare matar in pennanteckning med hjälp av digitaliseraren. Eftersom informationen som en digitaliserare rapporterar skiljer sig åt beroende på tillverkaren kan egenskaperna inom en StylusPoint variera. Om du vill avgöra om en egenskap finns i StylusPointanropar HasProperty du metoden. Egenskapen Description innehåller en StylusPointDescription som anger vilka egenskaper som finns i StylusPoint. Alla StylusPoint objekt innehåller egenskaper som anger koordinaterna (x, y) samt trycket.
Konstruktorer
| Name | Description |
|---|---|
| StylusPoint(Double, Double, Single, StylusPointDescription, Int32[]) |
Initierar en ny instans av StylusPoint klassen med angivna (x, y) koordinater, en |
| StylusPoint(Double, Double, Single) |
Initierar en ny instans av StylusPoint klassen med angivna koordinater (x, y) och tryck. |
| StylusPoint(Double, Double) |
Initierar en ny instans av StylusPoint klassen med angivna koordinater (x, y). |
Fält
| Name | Description |
|---|---|
| MaxXY |
Anger det största giltiga värdet för ett par koordinater (x, y). |
| MinXY |
Anger det minsta giltiga värdet för ett par koordinater (x, y). |
Egenskaper
| Name | Description |
|---|---|
| Description |
Hämtar eller anger StylusPointDescription som anger egenskaperna som lagras i StylusPoint. |
| PressureFactor |
Hämtar eller anger ett värde mellan 0 och 1 som återspeglar mängden tryck som pennan tillämpar på digitaliserarens yta när den StylusPoint skapas. |
| X |
Hämtar eller anger värdet för x-koordinaten för StylusPoint. |
| Y |
Hämtar eller anger y-koordinaten för StylusPoint. |
Metoder
| Name | Description |
|---|---|
| Equals(Object) |
Returnerar ett värde som anger om det angivna objektet är lika StylusPointmed . |
| Equals(StylusPoint, StylusPoint) |
Returnerar ett booleskt värde som anger om de två angivna StylusPoint objekten är lika med. |
| Equals(StylusPoint) |
Returnerar ett booleskt värde som anger om den angivna StylusPoint är lika med den aktuella StylusPoint. |
| GetHashCode() |
Returnerar hash-koden för den här instansen. |
| GetPropertyValue(StylusPointProperty) |
Returnerar värdet för den angivna egenskapen. |
| HasProperty(StylusPointProperty) |
Returnerar om aktuell innehåller StylusPoint den angivna egenskapen. |
| SetPropertyValue(StylusPointProperty, Int32) |
Anger den angivna egenskapen till det angivna värdet. |
| ToPoint() |
Konverterar en StylusPoint till en Point. |
Operatorer
| Name | Description |
|---|---|
| Equality(StylusPoint, StylusPoint) |
Jämför två angivna StylusPoint objekt och avgör om de är lika. |
| Explicit(StylusPoint to Point) |
Gjuter angivet StylusPoint till en Point. |
| Inequality(StylusPoint, StylusPoint) |
Returnerar ett booleskt värde som anger om de angivna StylusPoint objekten är ojämlika. |