PointerPoint Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece propriedades básicas para o ponteiro de entrada associado a um único mouse, caneta/caneta ou contato por toque.
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
- Herança
- Atributos
Requisitos do Windows
Família de dispositivos |
Windows 10 (introduzida na 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduzida na v1.0)
|
Exemplos
No exemplo a seguir, consultamos várias propriedades de ponteiro usando um objeto 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;
}
Comentários
A classe PointerPoint implementa o IPointerPoint.
Consulte PointerPointProperties para obter propriedades estendidas acessíveis por meio de Propriedades.
Na maioria dos casos, recomendamos que você obtenha informações de ponteiro por meio do argumento de evento dos manipuladores de eventos de ponteiro na estrutura de idioma escolhida.
Se o argumento de evento não expor intrinsecamente os detalhes do ponteiro exigidos pelo aplicativo, você poderá obter acesso a dados de ponteiro estendidos por meio dos métodos GetCurrentPoint e GetIntermediatePoints de PointerRoutedEventArgs. Use esses métodos para especificar o contexto dos dados do ponteiro.
Os métodos estáticos do PointerPoint, GetCurrentPoint e GetIntermediatePoints, sempre usam o contexto do aplicativo.
Observação
Essa classe não é ágil, o que significa que você precisa considerar seu modelo de threading e comportamento de marshaling. Para obter mais informações, consulte Threading and Marshaling (C++/CX) e Using Windows Runtime objects in a multithreaded environment (.NET).
Propriedades
FrameId |
Obtém a ID de um quadro de entrada. |
IsInContact |
Obtém um valor que indica se o dispositivo de entrada (toque, caneta/caneta) está tocando na superfície do digitalizador ou se um botão do mouse é pressionado para baixo. |
PointerDevice |
Obtém informações sobre o dispositivo associado ao ponteiro de entrada. |
PointerId |
Obtém um identificador exclusivo para o ponteiro de entrada. |
Position |
Obtém o local da entrada do ponteiro nas coordenadas do cliente. |
Properties |
Obtém informações estendidas sobre o ponteiro de entrada. |
RawPosition |
Obtém as coordenadas do cliente do ponteiro de entrada conforme relatado pelo dispositivo de entrada. |
Timestamp |
Obtém a hora em que a entrada ocorreu. |
Métodos
GetCurrentPoint(UInt32) |
Recupera informações de posição e estado do ponteiro especificado. Na maioria dos casos, recomendamos que você obtenha informações de ponteiro por meio do argumento de evento dos manipuladores de eventos de ponteiro na estrutura de linguagem escolhida (aplicativo do Windows usando JavaScript, aplicativo UWP usando C++, C#ou Visual Basic ou aplicativo UWP usando DirectX com C++). Se o argumento de evento não expor intrinsecamente os detalhes do ponteiro exigidos pelo aplicativo, você poderá obter acesso a dados de ponteiro estendidos por meio dos métodos GetCurrentPoint e GetIntermediatePoints de PointerRoutedEventArgs. Use esses métodos para especificar o contexto dos dados do ponteiro. Os métodos estáticos do PointerPoint , GetCurrentPoint e GetIntermediatePoints, sempre usam o contexto do aplicativo. |
GetCurrentPoint(UInt32, IPointerPointTransform) |
Recupera as informações transformadas para o ponteiro especificado. Na maioria dos casos, recomendamos que você obtenha informações de ponteiro por meio do argumento de evento dos manipuladores de eventos de ponteiro na estrutura de linguagem escolhida (aplicativo do Windows usando JavaScript, aplicativo UWP usando C++, C#ou Visual Basic ou aplicativo UWP usando DirectX com C++). Se o argumento de evento não expor intrinsecamente os detalhes do ponteiro exigidos pelo aplicativo, você poderá obter acesso a dados de ponteiro estendidos por meio dos métodos GetCurrentPoint e GetIntermediatePoints de PointerRoutedEventArgs. Use esses métodos para especificar o contexto dos dados do ponteiro. Os métodos estáticos do PointerPoint , GetCurrentPoint e GetIntermediatePoints, sempre usam o contexto do aplicativo. |
GetIntermediatePoints(UInt32) |
Recupera informações de posição e estado do ponteiro especificado, do último evento de ponteiro até e incluindo o evento de ponteiro atual. Na maioria dos casos, recomendamos que você obtenha informações de ponteiro por meio do argumento de evento dos manipuladores de eventos de ponteiro na estrutura de linguagem escolhida (aplicativo do Windows usando JavaScript, aplicativo UWP usando C++, C#ou Visual Basic ou aplicativo UWP usando DirectX com C++). Se o argumento de evento não expor intrinsecamente os detalhes do ponteiro exigidos pelo aplicativo, você poderá obter acesso a dados de ponteiro estendidos por meio dos métodos GetCurrentPoint e GetIntermediatePoints de PointerRoutedEventArgs. Use esses métodos para especificar o contexto dos dados do ponteiro. Os métodos estáticos do PointerPoint , GetCurrentPoint e GetIntermediatePoints, sempre usam o contexto do aplicativo. |
GetIntermediatePoints(UInt32, IPointerPointTransform) |
Recupera as informações de posição e estado transformadas para o ponteiro especificado, do último evento de ponteiro até e incluindo o evento de ponteiro atual. Na maioria dos casos, recomendamos que você obtenha informações de ponteiro por meio do argumento de evento dos manipuladores de eventos de ponteiro na estrutura de linguagem escolhida (aplicativo do Windows usando JavaScript, aplicativo UWP usando C++, C#ou Visual Basic ou aplicativo UWP usando DirectX com C++). Se o argumento de evento não expor intrinsecamente os detalhes do ponteiro exigidos pelo aplicativo, você poderá obter acesso a dados de ponteiro estendidos por meio dos métodos GetCurrentPoint e GetIntermediatePoints de PointerRoutedEventArgs. Use esses métodos para especificar o contexto dos dados do ponteiro. Os métodos estáticos do PointerPoint , GetCurrentPoint e GetIntermediatePoints, sempre usam o contexto do aplicativo. |
Aplica-se a
Confira também
- Windows.UI.Input
- Windows.Devices.Input
- Windows.UI.Core
- Windows.UI.Input.Inking
- Windows.UI.Xaml.Input
- TypedEventHandler<TSender,TResult>
- Interações personalizadas do usuário
- Diretrizes de UX para interações personalizadas do usuário
- Diretrizes de design de toque
- Amostra do modo de interação do usuário
- Amostra de visuais de foco
- Entrada: amostra de funcionalidades do dispositivo
- Entrada: amostra de tinta simplificada
- Entrada: amostra de gestos no Windows 8
- Entrada: amostra de eventos de entrada do usuário XAML
- Exemplo de rolagem, movimento panorâmico e zoom de XAML
- Amostra de entrada por toque do DirectX
- Entrada: amostra de manipulações e gestos (C++)
- Entrada: amostra de teste de hit de toque
- Exemplo de identificação de origem de entrada
- Exemplo de injeção de toque
- Exemplo de teste de clique por toque do Win32
- Exemplo de entrada básico (Windows 10)