PointerPointProperties Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce proprietà estese per un oggetto PointerPoint .
Nella maggior parte dei casi, ti consigliamo di ottenere informazioni sul puntatore tramite i gestori eventi del puntatore del framework del linguaggio Windows 8 scelto (app windows con JavaScript, app UWP con C++, C#o Visual Basic o app UWP con DirectX con C++).
Se l'argomento dell'evento non espone i dettagli del puntatore richiesti dall'app, è possibile ottenere l'accesso ai dati del puntatore esteso dall'argomento evento tramite i metodi getCurrentPoint e getIntermediatePoints o le proprietà currentPoint e intermediatePoints . È consigliabile usare i metodi getCurrentPoint e getIntermediatePoints come è possibile specificare il contesto dei dati del puntatore.
I metodi statici pointerPoint , GetCurrentPoint e GetIntermediatePoints, usano sempre il contesto dell'app.
public ref class PointerPointProperties sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.None)]
class PointerPointProperties final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.None)]
public sealed class PointerPointProperties
Public NotInheritable Class PointerPointProperties
- Ereditarietà
- Attributi
Requisiti Windows
Famiglia di dispositivi |
Windows 10 (è stato introdotto in 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)
|
Esempio
Nell'esempio seguente viene eseguita una query su varie proprietà del puntatore esteso usando un oggetto PointerPoint .
String queryPointer(PointerPoint ptrPt)
{
String details = "";
switch (ptrPt.PointerDevice.PointerDeviceType)
{
case Windows.Devices.Input.PointerDeviceType.Mouse:
details += "\nPointer type: mouse";
break;
case Windows.Devices.Input.PointerDeviceType.Pen:
details += "\nPointer type: pen";
if (ptrPt.IsInContact)
{
details += "\nPressure: " + ptrPt.Properties.Pressure;
details += "\nrotation: " + ptrPt.Properties.Orientation;
details += "\nTilt X: " + ptrPt.Properties.XTilt;
details += "\nTilt Y: " + ptrPt.Properties.YTilt;
details += "\nBarrel button pressed: " + ptrPt.Properties.IsBarrelButtonPressed;
}
break;
case Windows.Devices.Input.PointerDeviceType.Touch:
details += "\nPointer type: touch";
details += "\nrotation: " + ptrPt.Properties.Orientation;
details += "\nTilt X: " + ptrPt.Properties.XTilt;
details += "\nTilt Y: " + ptrPt.Properties.YTilt;
break;
default:
details += "\nPointer type: n/a";
break;
}
GeneralTransform gt = Target.TransformToVisual(page);
Point screenPoint;
screenPoint = gt.TransformPoint(new Point(ptrPt.Position.X, ptrPt.Position.Y));
details += "\nPointer Id: " + ptrPt.PointerId.ToString() +
"\nPointer location (parent): " + ptrPt.Position.X + ", " + ptrPt.Position.Y +
"\nPointer location (screen): " + screenPoint.X + ", " + screenPoint.Y;
return details;
}
String queryPointer(PointerPoint ptrPt)
{
String details = "";
switch (ptrPt.PointerDevice.PointerDeviceType)
{
case Windows.Devices.Input.PointerDeviceType.Mouse:
details += "\nPointer type: mouse";
break;
case Windows.Devices.Input.PointerDeviceType.Pen:
details += "\nPointer type: pen";
if (ptrPt.IsInContact)
{
details += "\nPressure: " + ptrPt.Properties.Pressure;
details += "\nrotation: " + ptrPt.Properties.Orientation;
details += "\nTilt X: " + ptrPt.Properties.XTilt;
details += "\nTilt Y: " + ptrPt.Properties.YTilt;
details += "\nBarrel button pressed: " + ptrPt.Properties.IsBarrelButtonPressed;
}
break;
case Windows.Devices.Input.PointerDeviceType.Touch:
details += "\nPointer type: touch";
details += "\nrotation: " + ptrPt.Properties.Orientation;
details += "\nTilt X: " + ptrPt.Properties.XTilt;
details += "\nTilt Y: " + ptrPt.Properties.YTilt;
break;
default:
details += "\nPointer type: n/a";
break;
}
GeneralTransform gt = Target.TransformToVisual(page);
Point screenPoint;
screenPoint = gt.TransformPoint(new Point(ptrPt.Position.X, ptrPt.Position.Y));
details += "\nPointer Id: " + ptrPt.PointerId.ToString() +
"\nPointer location (parent): " + ptrPt.Position.X + ", " + ptrPt.Position.Y +
"\nPointer location (screen): " + screenPoint.X + ", " + screenPoint.Y;
return details;
}
Commenti
La classe PointerPointProperties implementa IPointerPointProperties.
Nota
Questa classe non è agile, il che significa che è necessario considerare il modello di threading e il comportamento di marshalling. Per altre informazioni, vedere Threading e marshalling (C++/CX) e Uso di oggetti Windows Runtime in un ambiente multithreading (.NET).
Il nucleo dell'architettura dei dispositivi di input interattivo Microsoft è basato sulla definizione della classe di dispositivo standard USB (Universal Serial Bus) per Human Interface Device (HID), definita dal Forum degli implementatori, Inc.
Lo standard HID (Universal Serial Bus) Human Interface Device (HID) definisce i protocolli di configurazione e comunicazione per Human Interface Device (HID), ad esempio tastiere, dispositivi mouse, joystick e dispositivi di realtà virtuale, usati dagli utenti per immettere i dati direttamente in un computer. Per informazioni dettagliate sullo standard HID USB, vedere il sito Web del forum degli implementatori USB .
Anche se il nucleo dell'architettura di input di Windows è basato sullo standard USB (Universal Serial Bus) Human Interface Device (HID), l'architettura non è limitata ai dispositivi USB (Universal Serial Bus). L'architettura di input supporta anche i dispositivi porta seriale, i dispositivi porta i8042 e i dispositivi di input proprietari.
Proprietà
ContactRect |
Ottiene il rettangolo di delimitazione dell'area di contatto ,in genere dall'input tocco. |
ContactRectRaw |
Ottiene il rettangolo di delimitazione dell'input non elaborato ,in genere dall'input tocco. |
IsBarrelButtonPressed |
Ottiene un valore che indica se viene premuto il pulsante a canna del dispositivo penna/stilo. |
IsCanceled |
Ottiene un valore che indica se l'input è stato annullato dal dispositivo puntatore. |
IsEraser |
Ottiene un valore che indica se l'input proviene da una gomma della penna. |
IsHorizontalMouseWheel |
Ottiene un valore che indica se l'input proviene da una rotellina di inclinazione del mouse. |
IsInRange |
Ottiene un valore che indica se il dispositivo puntatore è compreso nell'intervallo di rilevamento di un sensore o di un digitalizzatore (il puntatore continua a esistere). |
IsInverted |
Ottiene un valore che indica se la penna del digitalizzatore è invertita. |
IsLeftButtonPressed |
Ottiene un valore che indica se l'input del puntatore è stato attivato dalla modalità di azione primaria di un dispositivo di input. |
IsMiddleButtonPressed |
Ottiene un valore che indica se l'input del puntatore è stato attivato dalla modalità di azione terziaria di un dispositivo di input. |
IsPrimary |
Ottiene un valore che indica se l'input proviene dal puntatore primario quando vengono registrati più puntatori. |
IsRightButtonPressed |
Ottiene un valore che indica se l'input del puntatore è stato attivato dalla modalità azione secondaria (se supportata) di un dispositivo di input. |
IsXButton1Pressed |
Ottiene un valore che indica se l'input del puntatore è stato attivato dal primo pulsante esteso del mouse (XButton1). |
IsXButton2Pressed |
Ottiene un valore che indica se l'input del puntatore è stato attivato dal secondo pulsante esteso del mouse (XButton2). |
MouseWheelDelta |
Ottiene un valore (il valore non elaborato segnalato dal dispositivo) che indica la modifica nell'input del pulsante della rotellina dall'ultimo evento puntatore. |
Orientation |
Ottiene l'angolo in senso antiorario di rotazione attorno all'asse principale del dispositivo puntatore (asse z, perpendicolare alla superficie del digitalizzatore). Un valore di 0,0 gradi indica che il dispositivo è orientato verso la parte superiore del digitalizzatore. |
PointerUpdateKind |
Ottiene il tipo di modifica dello stato del puntatore. |
Pressure |
Ottiene un valore che indica la forza che il dispositivo puntatore (in genere una penna/stilo) esercita sulla superficie del digitalizzatore. |
TouchConfidence |
Ottiene un valore che indica se il dispositivo puntatore ha rifiutato il contatto tocco. |
Twist |
Ottiene la rotazione in senso orario in gradi di un dispositivo penna attorno al proprio asse principale, ad esempio quando l'utente ruota la penna nelle dita. |
XTilt |
Ottiene l'angolo del piano tra il piano Y-Z e il piano che contiene l'asse Y e l'asse del dispositivo di input (in genere una penna/stilo). |
YTilt |
Ottiene l'angolo del piano tra il piano X-Z e il piano che contiene l'asse X e l'asse del dispositivo di input (in genere una penna/stilo). |
ZDistance |
Ottiene la coordinata z (o la distanza) del puntatore dalla superficie dello schermo, in pixel indipendenti dal dispositivo. |
Metodi
GetUsageValue(UInt32, UInt32) |
Ottiene il valore di utilizzo HID (Human Interface Device) dell'input non elaborato. |
HasUsage(UInt32, UInt32) |
Ottiene un valore che indica se i dati di input dal dispositivo puntatore contengono le informazioni di utilizzo hiD (Human Interface Device) specificate. |
Si applica a
Vedi anche
- Windows.UI.Input
- Properties
- Windows.Devices.Input
- Windows.UI.Core
- Windows.UI.Input.Inking
- Windows.UI.Xaml.Input
- TypedEventHandler<TSender,TResult>
- Interazioni con l'utente personalizzate
- Linee guida per l'esperienza utente per le interazioni utente personalizzate
- Linee guida per la progettazione delle funzionalità di tocco
- Esempio di modalità di interazione con l'utente
- Esempio di indicatori visivi di stato attivo
- Input: Esempio delle funzionalità del dispositivo
- Input: Esempio di input penna semplificato
- Input: Esempio di gesti di Windows 8
- Input: Esempio di eventi di input utente XAML
- Esempio di scorrimento, panoramica e zoom XAML
- Esempio di input tramite tocco DirectX
- Input: Esempio di manipolazioni e gesti (C++)
- Input: Esempio di hit testing della funzionalità tocco
- Esempio di identificazione dell'origine di input
- Esempio di inserimento tramite tocco
- Esempio di hit testing tocco Win32