StylusPoint Struktura
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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
- 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 |
| 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é. |