PointerPointProperties Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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
- 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
- Windows.UI.Input
- Properties
- Windows.Devices.Input
- Windows.UI.Core
- Windows.UI.Input.Inking
- Windows.UI.Xaml.Input
- TypedEventHandler<TSender,TResult>
- Interaksi pengguna kustom
- Panduan UX untuk interaksi pengguna kustom
- Panduan desain sentuh
- Sampel mode interaksi pengguna
- Sampel visual fokus
- Input: Sampel kemampuan perangkat
- Input: Sampel tinta yang disederhanakan
- Input: sampel gerakan Windows 8
- Input: Sampel peristiwa input pengguna XAML
- Sampel pengguliran, penggeseran, dan pembesaran tampilan XAML
- Sampel input sentuh DirectX
- Input: Sampel manipulasi dan gerakan (C++)
- Input: Sampel pengujian tekan sentuhan
- Sampel identifikasi sumber input
- Sampel injeksi sentuh
- Sampel pengujian hit sentuh Win32