PointerPoint 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à di base per il puntatore di input associato a un singolo mouse, penna/stilo o contatto tocco.
public ref class PointerPoint sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.None)]
class PointerPoint final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.None)]
public sealed class PointerPoint
Public NotInheritable Class PointerPoint
- 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 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 PointerPoint implementa IPointerPoint.
Vedere PointerPointProperties per le proprietà estese accessibili tramite Proprietà.
Nella maggior parte dei casi, è consigliabile ottenere informazioni sul puntatore tramite l'argomento evento dei gestori eventi del puntatore nel framework del linguaggio scelto.
Se l'argomento evento non espone intrinsecamente i dettagli del puntatore richiesti dall'app, è possibile accedere ai dati del puntatore esteso tramite i metodi GetCurrentPoint e GetIntermediatePoints di PointerRoutedEventArgs. Usare questi metodi per specificare il contesto dei dati del puntatore.
I metodi pointerPoint statici, GetCurrentPoint e GetIntermediatePoints usano sempre il contesto dell'app.
Nota
Questa classe non è agile, il che significa che è necessario considerare il relativo modello di threading e il comportamento di marshalling. Per altre informazioni, vedere Threading e marshalling (C++/CX) eUso di oggetti Windows Runtime in un ambiente multithreaded (.NET).
Proprietà
FrameId |
Ottiene l'ID di un frame di input. |
IsInContact |
Ottiene un valore che indica se il dispositivo di input (tocco, penna/stilo) tocca la superficie del digitalizzatore o un pulsante del mouse viene premuto verso il basso. |
PointerDevice |
Ottiene informazioni sul dispositivo associato al puntatore di input. |
PointerId |
Ottiene un identificatore univoco per il puntatore di input. |
Position |
Ottiene la posizione dell'input del puntatore nelle coordinate client. |
Properties |
Ottiene informazioni estese sul puntatore di input. |
RawPosition |
Ottiene le coordinate client del puntatore di input come segnalato dal dispositivo di input. |
Timestamp |
Ottiene l'ora in cui si è verificato l'input. |
Metodi
GetCurrentPoint(UInt32) |
Recupera le informazioni sulla posizione e sullo stato per il puntatore specificato. Nella maggior parte dei casi, è consigliabile ottenere informazioni sul puntatore tramite l'argomento evento dei gestori eventi del puntatore nel framework di linguaggio scelto (app Windows con JavaScript, app UWP usando C++, C#o Visual Basic o app UWP usando DirectX con C++). Se l'argomento evento non espone intrinsecamente i dettagli del puntatore richiesti dall'app, è possibile accedere ai dati del puntatore esteso tramite i metodi GetCurrentPoint e GetIntermediatePoints di PointerRoutedEventArgs. Usare questi metodi per specificare il contesto dei dati del puntatore. I metodi pointerPoint statici, GetCurrentPoint e GetIntermediatePoints usano sempre il contesto dell'app. |
GetCurrentPoint(UInt32, IPointerPointTransform) |
Recupera le informazioni trasformate per il puntatore specificato. Nella maggior parte dei casi, è consigliabile ottenere informazioni sul puntatore tramite l'argomento evento dei gestori eventi del puntatore nel framework di linguaggio scelto (app Windows con JavaScript, app UWP usando C++, C#o Visual Basic o app UWP usando DirectX con C++). Se l'argomento evento non espone intrinsecamente i dettagli del puntatore richiesti dall'app, è possibile accedere ai dati del puntatore esteso tramite i metodi GetCurrentPoint e GetIntermediatePoints di PointerRoutedEventArgs. Usare questi metodi per specificare il contesto dei dati del puntatore. I metodi pointerPoint statici, GetCurrentPoint e GetIntermediatePoints usano sempre il contesto dell'app. |
GetIntermediatePoints(UInt32) |
Recupera le informazioni sulla posizione e sullo stato per il puntatore specificato, dall'ultimo evento puntatore fino a e include l'evento puntatore corrente. Nella maggior parte dei casi, è consigliabile ottenere informazioni sul puntatore tramite l'argomento evento dei gestori eventi del puntatore nel framework di linguaggio scelto (app Windows con JavaScript, app UWP usando C++, C#o Visual Basic o app UWP usando DirectX con C++). Se l'argomento evento non espone intrinsecamente i dettagli del puntatore richiesti dall'app, è possibile accedere ai dati del puntatore esteso tramite i metodi GetCurrentPoint e GetIntermediatePoints di PointerRoutedEventArgs. Usare questi metodi per specificare il contesto dei dati del puntatore. I metodi pointerPoint statici, GetCurrentPoint e GetIntermediatePoints usano sempre il contesto dell'app. |
GetIntermediatePoints(UInt32, IPointerPointTransform) |
Recupera le informazioni sulla posizione e sullo stato trasformate per il puntatore specificato, dall'ultimo evento puntatore fino a e include l'evento puntatore corrente. Nella maggior parte dei casi, è consigliabile ottenere informazioni sul puntatore tramite l'argomento evento dei gestori eventi del puntatore nel framework di linguaggio scelto (app Windows con JavaScript, app UWP usando C++, C#o Visual Basic o app UWP usando DirectX con C++). Se l'argomento evento non espone intrinsecamente i dettagli del puntatore richiesti dall'app, è possibile accedere ai dati del puntatore esteso tramite i metodi GetCurrentPoint e GetIntermediatePoints di PointerRoutedEventArgs. Usare questi metodi per specificare il contesto dei dati del puntatore. I metodi pointerPoint statici, GetCurrentPoint e GetIntermediatePoints usano sempre il contesto dell'app. |
Si applica a
Vedi anche
- Windows.UI.Input
- 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 personalizzata
- 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 tocco
- Esempio di hit-testing del tocco Win32
- Esempio di input di base (Windows 10)