PointerPoint 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 dasar untuk penunjuk input yang terkait dengan satu mouse, pena/stylus, atau kontak sentuh.
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
- 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 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 PointerPoint mengimplementasikan IPointerPoint.
Lihat PointerPointProperties untuk properti yang diperluas yang dapat diakses melalui Properti.
Dalam kebanyakan kasus, kami sarankan Anda mendapatkan info pointer melalui argumen peristiwa penangan peristiwa penunjuk dalam kerangka kerja bahasa yang Anda pilih.
Jika argumen peristiwa tidak secara intrinsik mengekspos detail pointer yang diperlukan oleh aplikasi Anda, Anda bisa mendapatkan akses ke data pointer yang diperluas melalui metode GetCurrentPoint dan GetIntermediatePoints dari PointerRoutedEventArgs. Gunakan metode ini untuk menentukan konteks data penunjuk.
Metode PointerPoint statis, GetCurrentPoint dan GetIntermediatePoints, selalu menggunakan konteks aplikasi.
Catatan
Kelas ini tidak tangkas, 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).
Properti
FrameId |
Mendapatkan ID bingkai input. |
IsInContact |
Mendapatkan nilai yang menunjukkan apakah perangkat input (sentuhan, pena/stylus) menyentuh permukaan digitizer, atau tombol mouse ditekan ke bawah. |
PointerDevice |
Mendapatkan informasi tentang perangkat yang terkait dengan penunjuk input. |
PointerId |
Mendapatkan pengidentifikasi unik untuk penunjuk input. |
Position |
Mendapatkan lokasi input pointer dalam koordinat klien. |
Properties |
Mendapatkan informasi yang diperluas tentang penunjuk input. |
RawPosition |
Mendapatkan koordinat klien dari penunjuk input seperti yang dilaporkan oleh perangkat input. |
Timestamp |
Mendapatkan waktu ketika input terjadi. |
Metode
GetCurrentPoint(UInt32) |
Mengambil informasi posisi dan status untuk penunjuk yang ditentukan. Dalam kebanyakan kasus, kami sarankan Anda mendapatkan info pointer melalui argumen peristiwa penangan peristiwa penunjuk dalam kerangka kerja bahasa 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 secara intrinsik mengekspos detail pointer yang diperlukan oleh aplikasi Anda, Anda bisa mendapatkan akses ke data pointer yang diperluas melalui metode GetCurrentPoint dan GetIntermediatePoints dari PointerRoutedEventArgs. Gunakan metode ini untuk menentukan konteks data penunjuk. Metode PointerPoint statis, GetCurrentPoint dan GetIntermediatePoints, selalu menggunakan konteks aplikasi. |
GetCurrentPoint(UInt32, IPointerPointTransform) |
Mengambil informasi yang diubah untuk penunjuk yang ditentukan. Dalam kebanyakan kasus, kami sarankan Anda mendapatkan info pointer melalui argumen peristiwa penangan peristiwa penunjuk dalam kerangka kerja bahasa 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 secara intrinsik mengekspos detail pointer yang diperlukan oleh aplikasi Anda, Anda bisa mendapatkan akses ke data pointer yang diperluas melalui metode GetCurrentPoint dan GetIntermediatePoints dari PointerRoutedEventArgs. Gunakan metode ini untuk menentukan konteks data penunjuk. Metode PointerPoint statis, GetCurrentPoint dan GetIntermediatePoints, selalu menggunakan konteks aplikasi. |
GetIntermediatePoints(UInt32) |
Mengambil informasi posisi dan status untuk penunjuk yang ditentukan, dari peristiwa penunjuk terakhir hingga dan termasuk peristiwa penunjuk saat ini. Dalam kebanyakan kasus, kami sarankan Anda mendapatkan info pointer melalui argumen peristiwa penangan peristiwa penunjuk dalam kerangka kerja bahasa 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 secara intrinsik mengekspos detail pointer yang diperlukan oleh aplikasi Anda, Anda bisa mendapatkan akses ke data pointer yang diperluas melalui metode GetCurrentPoint dan GetIntermediatePoints dari PointerRoutedEventArgs. Gunakan metode ini untuk menentukan konteks data penunjuk. Metode PointerPoint statis, GetCurrentPoint dan GetIntermediatePoints, selalu menggunakan konteks aplikasi. |
GetIntermediatePoints(UInt32, IPointerPointTransform) |
Mengambil posisi yang diubah dan informasi status untuk penunjuk yang ditentukan, dari peristiwa penunjuk terakhir hingga dan termasuk peristiwa penunjuk saat ini. Dalam kebanyakan kasus, kami sarankan Anda mendapatkan info pointer melalui argumen peristiwa penangan peristiwa penunjuk dalam kerangka kerja bahasa 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 secara intrinsik mengekspos detail pointer yang diperlukan oleh aplikasi Anda, Anda bisa mendapatkan akses ke data pointer yang diperluas melalui metode GetCurrentPoint dan GetIntermediatePoints dari PointerRoutedEventArgs. Gunakan metode ini untuk menentukan konteks data penunjuk. Metode PointerPoint statis, GetCurrentPoint dan GetIntermediatePoints, selalu menggunakan konteks aplikasi. |
Berlaku untuk
Lihat juga
- Windows.UI.Input
- 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
- Pedoman 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: Sentuh sampel pengujian hit
- Sampel identifikasi sumber input
- Sampel injeksi sentuh
- Sampel pengujian hit sentuh Win32
- Sampel input dasar (Windows 10)