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(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class Pointer final
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class Pointer
Public NotInheritable Class Pointer
- Ereditarietà
- Attributi
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
La Pointer
classe viene 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.
Nella maggior parte dei casi, è consigliabile ottenere informazioni sul puntatore tramite l'argomento dell'evento dei gestori eventi del puntatore (vedere PointerRoutedEventArgs).
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.
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. |