Partilhar via


PointerPoint Classe

Definição

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
Object Platform::Object IInspectable PointerPoint
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