PointerPoint クラス

定義

1 つのマウス、ペン/スタイラス、またはタッチ接触に関連付けられた入力ポインターの基本的なプロパティを提供します。

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
継承
Object Platform::Object IInspectable PointerPoint
属性

Windows の要件

デバイス ファミリ
Windows 10 (10.0.10240.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v1.0 で導入)

次の例では、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;
}

注釈

PointerPoint クラスは IPointerPoint を実装します。

プロパティからアクセスできる拡張プロパティについては、「 PointerPointPropertiesを参照してください

ほとんどの場合、選択した言語フレームワークのポインター イベント ハンドラーのイベント引数を通じてポインター情報を取得することをお勧めします。

イベント引数でアプリに必要なポインターの詳細が本質的に公開されない場合は、PointerRoutedEventArgsGetCurrentPoint メソッドと GetIntermediatePoints メソッドを使用して拡張ポインター データにアクセスできます。 これらのメソッドを使用して、ポインター データのコンテキストを指定します。

静的な PointerPoint メソッド である GetCurrentPoint および GetIntermediatePoints では、常にアプリ コンテキストが使用されます。

注意

このクラスはアジャイルではありません。つまり、スレッド モデルとマーシャリング動作を考慮する必要があります。 詳細については、「スレッド処理とマーシャリング (C++/CX)」および「マルチスレッド環境でのWindows ランタイム オブジェクトの使用 (.NET)」を参照してください。

プロパティ

FrameId

入力フレームの ID を取得します。

IsInContact

入力デバイス (タッチ、ペン/スタイラス) がデジタイザーの表面に触れているか、マウス ボタンが押されたかどうかを示す値を取得します。

PointerDevice

入力ポインターに関連付けられているデバイスに関する情報を取得します。

PointerId

入力ポインターの一意識別子を取得します。

Position

クライアント座標でのポインター入力の場所を取得します。

Properties

入力ポインターに関する拡張情報を取得します。

RawPosition

入力デバイスによって報告される入力ポインターのクライアント座標を取得します。

Timestamp

入力が発生した時刻を取得します。

メソッド

GetCurrentPoint(UInt32)

指定したポインターの位置と状態の情報を取得します。

ほとんどの場合、選択した言語フレームワーク (JavaScript を使用する Windows アプリ、C++、C#、Visual Basic を使用する UWP アプリ、または C++ で DirectX を使用する UWP アプリ) のポインター イベント ハンドラーのイベント引数を通じてポインター情報を取得することをお勧めします。

イベント引数でアプリに必要なポインターの詳細が本質的に公開されない場合は、PointerRoutedEventArgsGetCurrentPoint メソッドと GetIntermediatePoints メソッドを使用して拡張ポインター データにアクセスできます。 これらのメソッドを使用して、ポインター データのコンテキストを指定します。

静的 な PointerPoint メソッドである GetCurrentPoint および GetIntermediatePoints では、常にアプリ コンテキストが使用されます。

GetCurrentPoint(UInt32, IPointerPointTransform)

指定したポインターの変換された情報を取得します。

ほとんどの場合、選択した言語フレームワーク (JavaScript を使用する Windows アプリ、C++、C#、Visual Basic を使用する UWP アプリ、または C++ で DirectX を使用する UWP アプリ) のポインター イベント ハンドラーのイベント引数を通じてポインター情報を取得することをお勧めします。

イベント引数でアプリに必要なポインターの詳細が本質的に公開されない場合は、PointerRoutedEventArgsGetCurrentPoint メソッドと GetIntermediatePoints メソッドを使用して拡張ポインター データにアクセスできます。 これらのメソッドを使用して、ポインター データのコンテキストを指定します。

静的 な PointerPoint メソッド である GetCurrentPoint および GetIntermediatePoints では、常にアプリ コンテキストが使用されます。

GetIntermediatePoints(UInt32)

最後のポインター イベントから現在のポインター イベントまで、および現在のポインター イベントまで、指定したポインターの位置と状態の情報を取得します。

ほとんどの場合、選択した言語フレームワーク (JavaScript を使用する Windows アプリ、C++、C#、Visual Basic を使用する UWP アプリ、または C++ で DirectX を使用する UWP アプリ) のポインター イベント ハンドラーのイベント引数を通じてポインター情報を取得することをお勧めします。

イベント引数でアプリに必要なポインターの詳細が本質的に公開されない場合は、PointerRoutedEventArgsGetCurrentPoint メソッドと GetIntermediatePoints メソッドを使用して拡張ポインター データにアクセスできます。 これらのメソッドを使用して、ポインター データのコンテキストを指定します。

静的 な PointerPoint メソッド である GetCurrentPoint および GetIntermediatePoints では、常にアプリ コンテキストが使用されます。

GetIntermediatePoints(UInt32, IPointerPointTransform)

最後のポインター イベントから現在のポインター イベントまで、および現在のポインター イベントを含む、指定したポインターの変換された位置と状態の情報を取得します。

ほとんどの場合、選択した言語フレームワーク (JavaScript を使用する Windows アプリ、C++、C#、Visual Basic を使用する UWP アプリ、または C++ で DirectX を使用する UWP アプリ) のポインター イベント ハンドラーのイベント引数を通じてポインター情報を取得することをお勧めします。

イベント引数でアプリに必要なポインターの詳細が本質的に公開されない場合は、PointerRoutedEventArgsGetCurrentPoint メソッドと GetIntermediatePoints メソッドを使用して拡張ポインター データにアクセスできます。 これらのメソッドを使用して、ポインター データのコンテキストを指定します。

静的 な PointerPoint メソッド である GetCurrentPoint および GetIntermediatePoints では、常にアプリ コンテキストが使用されます。

適用対象

こちらもご覧ください