UIElement.PointerMoved Evento
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.
Ocorre quando um ponteiro se move enquanto o ponteiro permanece dentro da área de teste de ocorrência desse elemento.
public:
virtual event PointerEventHandler ^ PointerMoved;
// Register
event_token PointerMoved(PointerEventHandler const& handler) const;
// Revoke with event_token
void PointerMoved(event_token const* cookie) const;
// Revoke with event_revoker
UIElement::PointerMoved_revoker PointerMoved(auto_revoke_t, PointerEventHandler const& handler) const;
public event PointerEventHandler PointerMoved;
function onPointerMoved(eventArgs) { /* Your code */ }
uIElement.addEventListener("pointermoved", onPointerMoved);
uIElement.removeEventListener("pointermoved", onPointerMoved);
- or -
uIElement.onpointermoved = onPointerMoved;
Public Custom Event PointerMoved As PointerEventHandler
<uiElement PointerMoved="eventhandler"/>
Tipo de evento
Comentários
As interações de toque, mouse e caneta/caneta são recebidas, processadas e gerenciadas como entrada de ponteiro no aplicativo UWP. Qualquer uma dessas interações pode produzir um PointerMoved
evento. Para obter mais informações, consulte Entrada do ponteiro de identificador e a seção "PointerMoved para entrada de mouse e caneta" deste tópico.
Em alguns cenários de interface do usuário, especialmente se o usuário estiver usando um mouse, esse evento disparará muito. Lembre-se do perfil de desempenho do código que você coloca nesse manipulador e considere maneiras de usar seus próprios sinalizadores ou tolerâncias que podem limitar quantas vezes a lógica realmente precisa ser executada.
Esse evento é um evento roteado. Para obter mais informações sobre o conceito de evento roteado, consulte Visão geral de eventos e eventos roteado.
Para ações de toque e também para eventos específicos de interação ou de manipulação resultantes de uma ação de toque, é preciso que o elemento esteja visível para teste de clique, para ser a origem do evento e acionar o evento associado à ação. UIElement.Visibility deve ser Visível. Outras propriedades de tipos derivados também afetam a visibilidade do teste de ocorrência. Para saber mais, confira Visão geral de eventos e eventos roteados.
Esse evento também dá suporte à capacidade de anexar manipuladores de eventos à rota que será invocada mesmo que os dados do evento sejam marcados como Manipulados. Consulte AddHandler.
PointerMoved para entrada de mouse e caneta
Um dispositivo de entrada do mouse tem um cursor na tela que fica visível sempre que o mouse se move sobre os limites de um elemento, mesmo que nenhum botão do mouse seja pressionado no momento. Comportamento semelhante está disponível para entrada de dispositivo de caneta, em que os dispositivos de entrada podem detectar que a caneta está pairando sobre a superfície do dispositivo de entrada, mas não tocando-a. Assim, a entrada de mouse e caneta disparará PointerMoved
eventos com mais frequência do que a entrada por toque. Para obter mais informações, consulte Interações por mouse.
Por outro lado, um ponto de toque só será detectável se um dedo estiver tocando a superfície. Um ponto de toque só será gerado PointerMoved
enquanto esse ponto de toque permanecer em contato constante com a superfície à medida que ele se move. Para esses tipos de ações de toque que estão gerando PointerMoved
também é provável que a ação seja processada como uma manipulação ou como um gesto. Para obter mais informações, consulte Entrada de ponteiro de identificador.
A entrada do mouse é associada a um único ponteiro atribuído quando a entrada do mouse é detectada pela primeira vez e todas as interações iniciadas pelo mouse têm a mesma PointerId. Se o usuário clicar em um botão do mouse (esquerdo, roda ou direito), será criada uma associação secundária entre o ponteiro e esse botão por meio do evento PointerPressed. O evento PointerReleased é disparado somente quando esse mesmo botão do mouse é liberado (nenhum outro botão pode ser associado ao ponteiro até que o evento seja concluído). Devido a essa associação exclusiva, outros cliques de botão do mouse são roteado por meio do PointerMoved
evento. Você pode testar o estado do botão do mouse ao manipular esse evento, conforme mostrado neste exemplo:
Alguns aplicativos, como jogos, precisam acompanhar movimentos relativos do mouse para uma funcionalidade específica (por exemplo, um trackball virtual ou a câmera de exibição) e não usam o cursor do sistema ou as coordenadas de tela absolutas. Para obter detalhes sobre como ocultar o cursor do mouse e ignorar dados absolutos do mouse, consulte Movimentação relativa do mouse e CoreWindow.