PointerPointProperties Classe

Definizione

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