Pointer 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 Pointer sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Pointer final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class Pointer final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class Pointer
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class Pointer
Public NotInheritable Class Pointer
- 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
L'esempio di codice seguente mostra l'utilizzo della classe Pointer per trovare l'id puntatore univoco di ogni contatto di input in un'app, usare PointerDeviceType per ignorare forme specifiche di input (ad esempio, l'input del mouse) e archiviare le posizioni del puntatore. Per codice aggiuntivo che usa la classe Pointer, vedere l'esempio di input.
using System.Collections.Generic;
using Windows.Foundation;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Navigation;
namespace PointerExample
{
public sealed partial class BlankPage : Page
{
Dictionary<uint, Point?> _contacts;
const uint SUPPORTEDCONTACTS = 5;
public BlankPage()
{
this.InitializeComponent();
_contacts = new Dictionary<uint, Point?>((int)SUPPORTEDCONTACTS);
this.PointerPressed += BlankPage_PointerPressed;
this.PointerReleased += BlankPage_PointerReleased;
}
private void BlankPage_PointerPressed(object sender,
PointerRoutedEventArgs e)
{
// Ignore mouse inputs.
if (e.Pointer.PointerDeviceType !=
Windows.Devices.Input.PointerDeviceType.Mouse)
{
// Store and touch input contacts.
Windows.UI.Input.PointerPoint pt = e.GetCurrentPoint(this);
_contacts[e.Pointer.PointerId] = pt.Position;
}
e.Handled = true;
}
private void BlankPage_PointerReleased(object sender,
PointerRoutedEventArgs e)
{
// Ignore mouse inputs.
if (e.Pointer.PointerDeviceType !=
Windows.Devices.Input.PointerDeviceType.Mouse)
{
// Remove pointer contacts information.
uint ptrId = e.Pointer.PointerId;
if (_contacts.ContainsKey(ptrId))
{
_contacts[ptrId] = null;
_contacts.Remove(ptrId);
}
}
e.Handled = true;
}
}
}
Commenti
Nella maggior parte dei casi, ti consigliamo di ottenere informazioni sul puntatore tramite l'argomento dell'evento dei gestori eventi del puntatore nel framework del linguaggio scelto (app windows con JavaScript, app UWP con C++, C#o Visual Basic o app UWP con DirectX con C++).
Se l'argomento evento non espone intrinsecamente i dettagli del puntatore richiesti dall'app, è possibile accedere ai dati del puntatore estesi tramite i metodi GetCurrentPoint e GetIntermediatePoints di PointerRoutedEventArgs. È consigliabile usare questi metodi perché è possibile specificare il contesto dei dati del puntatore.
I metodi statici pointerPoint , GetCurrentPoint e GetIntermediatePoints, usano sempre il contesto dell'app. Puntatore è una classe astratta usata per descrivere un dispositivo di input. Questa classe identifica il dispositivo di input ,ad esempio lo stilo, il dito o il mouse, per ogni evento puntatore che si verifica.
Proprietà
IsInContact |
Ottiene un valore che determina se il dispositivo puntatore era in contatto con un sensore o un digitalizzatore al momento in cui è stato segnalato l'evento. |
IsInRange |
Ottiene un valore che indica se il dispositivo puntatore è compreso nell'intervallo di rilevamento di un sensore o di un digitalizzatore. |
PointerDeviceType |
Ottiene pointerDeviceType per il dispositivo puntatore. |
PointerId |
Ottiene l'identificatore generato dal sistema per questo riferimento al puntatore. |