Condividi tramite


PointerPoint Classe

Definizione

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à
Object Platform::Object IInspectable PointerPoint
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