PointerPointProperties Kelas

Definisi

Menyediakan properti yang diperluas untuk objek PointerPoint .

Dalam kebanyakan kasus, kami sarankan Anda mendapatkan info penunjuk melalui penunjuk penanganan aktivitas kerangka kerja bahasa Windows 8 yang Anda pilih (aplikasi Windows menggunakan JavaScript, aplikasi UWP menggunakan C++, C#, atau Visual Basic, atau aplikasi UWP menggunakan DirectX dengan C++).

Jika argumen peristiwa tidak mengekspos detail penunjuk yang diperlukan oleh aplikasi Anda, Anda bisa mendapatkan akses ke data pointer yang diperluas dari argumen peristiwa melalui metode getCurrentPoint dan getIntermediatePoints atau properti currentPoint dan intermediatePoints . Sebaiknya gunakan metode getCurrentPoint dan getIntermediatePoints karena Anda dapat menentukan konteks data penunjuk.

Metode PointerPoint statis, GetCurrentPoint dan GetIntermediatePoints, selalu menggunakan konteks aplikasi.

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

Persyaratan Windows

Rangkaian perangkat
Windows 10 (diperkenalkan dalam 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)

Contoh

Dalam contoh berikut, kami mengkueri berbagai properti pointer yang diperluas menggunakan objek 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;
}

Keterangan

Kelas PointerPointProperties mengimplementasikan IPointerPointProperties.

Catatan

Kelas ini tidak lincah, yang berarti Anda perlu mempertimbangkan model utas dan perilaku marshalingnya. Untuk informasi selengkapnya, lihat Threading dan Marshaling (C++/CX) dan Menggunakan objek Windows Runtime di lingkungan multithreaded (.NET).

Inti dari arsitektur perangkat input interaktif Microsoft didasarkan pada Definisi Kelas Perangkat standar Bus Serial Universal (USB) untuk Perangkat Antarmuka Manusia (HID), yang didefinisikan oleh Forum Pelaksana, Inc.

Standar Perangkat Antarmuka Manusia (HID) Universal Serial Bus (USB) mendefinisikan konfigurasi dan protokol komunikasi untuk Perangkat Antarmuka Manusia (HID), seperti keyboard, perangkat mouse, joystick, dan perangkat realitas virtual, yang digunakan manusia untuk memasukkan data langsung ke komputer. (Untuk informasi terperinci tentang standar USB HID, lihat situs web Forum Pelaksana USB .)

Meskipun inti arsitektur input Windows didasarkan pada standar Universal Serial Bus (USB) Human Interface Device (HID), arsitekturnya tidak terbatas pada perangkat Universal Serial Bus (USB). Arsitektur input juga mendukung perangkat port serial, perangkat port i8042, dan perangkat input kepemilikan.

Properti

ContactRect

Mendapatkan persegi panjang pembatas area kontak (biasanya dari input sentuhan).

ContactRectRaw

Mendapatkan persegi panjang pembatas input mentah (biasanya dari input sentuhan).

IsBarrelButtonPressed

Mendapatkan nilai yang menunjukkan apakah tombol barel perangkat pena/stylus ditekan.

IsCanceled

Mendapatkan nilai yang menunjukkan apakah input dibatalkan oleh perangkat penunjuk.

IsEraser

Mendapatkan nilai yang menunjukkan apakah input berasal dari penghapus pena.

IsHorizontalMouseWheel

Mendapatkan nilai yang menunjukkan apakah input berasal dari roda miring mouse.

IsInRange

Mendapatkan nilai yang menunjukkan apakah perangkat penunjuk berada dalam rentang deteksi sensor atau digitizer (penunjuk terus ada).

IsInverted

Mendapatkan nilai yang menunjukkan apakah pena digitizer terbalik.

IsLeftButtonPressed

Mendapatkan nilai yang menunjukkan apakah input penunjuk dipicu oleh mode tindakan utama perangkat input.

IsMiddleButtonPressed

Mendapatkan nilai yang menunjukkan apakah input pointer dipicu oleh mode tindakan tersier perangkat input.

IsPrimary

Mendapatkan nilai yang menunjukkan apakah input berasal dari pointer utama saat beberapa pointer terdaftar.

IsRightButtonPressed

Mendapatkan nilai yang menunjukkan apakah input penunjuk dipicu oleh mode tindakan sekunder (jika didukung) dari perangkat input.

IsXButton1Pressed

Mendapatkan nilai yang menunjukkan apakah input pointer dipicu oleh tombol mouse yang diperluas pertama (XButton1).

IsXButton2Pressed

Mendapatkan nilai yang menunjukkan apakah input pointer dipicu oleh tombol mouse kedua yang diperluas (XButton2).

MouseWheelDelta

Mendapatkan nilai (nilai mentah yang dilaporkan oleh perangkat) yang menunjukkan perubahan input tombol roda dari peristiwa penunjuk terakhir.

Orientation

Mendapatkan sudut rotasi searah jarum jam di sekitar sumbu utama perangkat penunjuk (sumbu z, tegak lurus dengan permukaan digitizer). Nilai 0,0 derajat menunjukkan perangkat berorientasi ke bagian atas digitizer.

PointerUpdateKind

Mendapatkan jenis perubahan status pointer.

Pressure

Mendapatkan nilai yang menunjukkan kekuatan yang ditampilkan perangkat penunjuk (biasanya pena/stylus) pada permukaan digitizer.

TouchConfidence

Mendapatkan nilai yang menunjukkan apakah perangkat penunjuk menolak kontak sentuh.

Twist

Mendapatkan rotasi searah jajaran jajaran derajat perangkat pena di sekitar sumbu utamanya sendiri (seperti ketika pengguna memutar pena di jari mereka).

XTilt

Mendapatkan sudut bidang antara bidang Y-Z dan bidang yang berisi sumbu Y dan sumbu perangkat input (biasanya pena/stylus).

YTilt

Mendapatkan sudut bidang antara bidang X-Z dan bidang yang berisi sumbu X dan sumbu perangkat input (biasanya pena/stylus).

ZDistance

Mendapatkan koordinat z (atau jarak) penunjuk dari permukaan layar, dalam piksel independen perangkat.

Metode

GetUsageValue(UInt32, UInt32)

Mendapatkan nilai penggunaan Human Interface Device (HID) dari input mentah.

HasUsage(UInt32, UInt32)

Mendapatkan nilai yang menunjukkan apakah data input dari perangkat pointer berisi informasi penggunaan Human Interface Device (HID) yang ditentukan.

Berlaku untuk

Lihat juga