Provides extended properties for a PointerPoint object.
In most cases, we recommend that you obtain pointer info through the pointer event handlers of your chosen Windows 8 language framework (Windows Store apps using JavaScript, Windows Store apps built for Windows using C++, C#, or Visual Basic, or Windows Store apps built for Windows using DirectX with C++).
If the event argument doesn't expose the pointer details required by your app, you can get access to extended pointer data from the event argument through the getCurrentPoint and getIntermediatePoints methods or currentPoint and intermediatePoints properties. We recommend using the getCurrentPoint and getIntermediatePoints methods as you can specify the context of the pointer data.
The static PointerPoint methods, GetCurrentPoint and GetIntermediatePoints, always use the context of the app.
Syntax
var pointerPointProperties = Windows.UI.Input.PointerPoint.properties;
Attributes
- MarshalingBehaviorAttribute(None)
- VersionAttribute(NTDDI_WIN8)
Members
The PointerPointProperties class has these types of members:
Methods
The PointerPointProperties class has these methods. With C#, Visual Basic, and C++, it also inherits methods from the Object class.
| Method | Description |
|---|---|
| GetUsageValue | Gets the Human Interface Device (HID) usage value of the raw input. |
| HasUsage | Gets a value that indicates whether the input data from the pointer device contains the specified Human Interface Device (HID) usage information. |
Properties
The PointerPointProperties class has these properties.
| Property | Access type | Description |
|---|---|---|
| Read-only | Gets the bounding rectangle of the contact area (typically from touch input). | |
| Read-only | Gets the bounding rectangle of the raw input (typically from touch input). | |
| Read-only | Gets a value that indicates whether the barrel button of the pen/stylus device is pressed. | |
| Read-only | Gets a value that indicates whether the input was canceled by the pointer device. | |
| Read-only | Gets a value that indicates whether the input is from a digitizer eraser. | |
| Read-only | Gets a value that indicates whether the input is from a mouse tilt wheel. | |
| Read-only | Gets a value that indicates whether the pointer device is within detection range of a sensor or digitizer. | |
| Read-only | Gets a value that indicates whether the digitizer pen is inverted. | |
| Read-only | Gets a value that indicates whether the input is from the left button of a mouse or other input method. | |
| Read-only | Gets a value that indicates whether the input is from the middle button of a mouse or other input method. | |
| Read-only | Gets a value that indicates whether the input is from the primary pointer when multiple pointers are registered. | |
| Read-only | Gets a value that indicates whether the input is from the right button of a mouse or other input method. | |
| Read-only | Gets the pressed state of the first extended mouse button. | |
| Read-only | Gets the pressed state of the second extended mouse button. | |
| Read-only | Gets a value (the raw value reported by the device) that indicates the change in wheel button input from the last pointer event. | |
| Read-only | Gets the counter-clockwise angle of rotation around the major axis of the pointer device (the z-axis, perpendicular to the surface of the digitizer). | |
| Read-only | Gets the kind of pointer state change. | |
| Read-only | Gets a value that indicates the force that the pointer device (typically a pen/stylus) exerts on the surface of the digitizer. | |
| Read-only | Gets a value that indicates whether the pointer device rejected the touch contact. | |
| Read-only | Gets the clockwise rotation in degrees of a pen device around its own major axis (such as when the user spins the pen in their fingers). | |
| Read-only | Gets the plane angle between the Y-Z plane and the plane that contains the Y axis and the axis of the input device (typically a pen/stylus). | |
| Read-only | Gets the plane angle between the X-Z plane and the plane that contains the X axis and the axis of the input device (typically a pen/stylus). |
Remarks
The PointerPointProperties class implements IPointerPointProperties.
Note : This class is not agile, which means that you need to consider its threading model and marshaling behavior. For more info, see Threading and Marshaling (C++/CX) and Using Windows Runtime objects in a multithreaded environment (.NET).
Examples
In the following example, we query various extended pointer properties using a PointerPoint object.
// Get extended pointer data. function queryPointer(e) { // We get the extended pointer info through the getCurrentPoint method // of the event argument. (We recommend using getCurrentPoint // to ensure the coordinate space is in relation to the target.) // Note: getCurrentPoint and currentPoint are only available in the // local compartment, they are not available in the web compartment. var ptTargetProperties = e.getCurrentPoint(e.currentTarget).properties; var details = "Pointer Id: " + e.pointerId; switch (e.pointerType) { case e.MSPOINTER_TYPE_MOUSE: details += "\nPointer type: mouse"; details += "\nLeft button: " + ptTargetProperties.isLeftButtonPressed; details += "\nRight button: " + ptTargetProperties.isRightButtonPressed; details += "\nWheel button: " + ptTargetProperties.isMiddleButtonPressed; details += "\nX1 button: " + ptTargetProperties.isXButton1Pressed; details += "\nX2 button: " + ptTargetProperties.isXButton2Pressed; break; case e.MSPOINTER_TYPE_PEN: details += "\nPointer type: pen"; if (ptProperties.isInContact) { details += "\nPressure: " + ptTargetProperties.pressure; details += "\nrotation: " + ptTargetProperties.rotation; details += "\nTilt X: " + ptTargetProperties.tiltX; details += "\nTilt Y: " + ptTargetProperties.tiltY; details += "\nBarrel button pressed: " + ptTargetProperties.isBarrelButtonPressed; } break; case e.MSPOINTER_TYPE_TOUCH: details += "\nPointer type: touch"; details += "\nPressure: " + ptTargetProperties.pressure; details += "\nrotation: " + ptTargetProperties.rotation; details += "\nTilt X: " + ptTargetProperties.tiltX; details += "\nTilt Y: " + ptTargetProperties.tiltY; break; default: details += "\nPointer type: " + "n/a"; break; } details += "\nPointer location (target): " + e.offsetX + ", " + e.offsetY; details += "\nPointer location (screen): " + e.screenX + ", " + e.screenY; return details; }
Requirements
|
Minimum supported client | Windows 8 [Windows Store apps only] |
|---|---|
|
Minimum supported server | Windows Server 2012 [Windows Store apps only] |
|
Minimum supported phone | Windows Phone 8 |
|
Namespace |
|
|
Metadata |
|
See also
Build date: 2/25/2013