Share via


Função EvaluateProximityToPolygon (winuser.h)

Retorna a pontuação de um polígono como o provável destino de toque (em comparação com todos os outros polígonos que cruzam a área de contato de toque) e um ponto de toque ajustado dentro do polígono.

Sintaxe

BOOL EvaluateProximityToPolygon(
        UINT32                                 numVertices,
  [in]  const POINT                            *controlPolygon,
  [in]  const TOUCH_HIT_TESTING_INPUT          *pHitTestingInput,
  [out] TOUCH_HIT_TESTING_PROXIMITY_EVALUATION *pProximityEval
);

Parâmetros

numVertices

O número de vértices no polígono. Esse valor deve ser maior ou igual a 3.

Esse valor indica o tamanho da matriz, conforme especificado pelo parâmetro controlPolygon .

[in] controlPolygon

A matriz de coordenadas de tela x-y que definem a forma do elemento de interface do usuário.

O parâmetro numVertices especifica o número de coordenadas.

[in] pHitTestingInput

A estrutura TOUCH_HIT_TESTING_INPUT que contém os dados da área de contato por toque.

[out] pProximityEval

A estrutura TOUCH_HIT_TESTING_PROXIMITY_EVALUATION que contém a pontuação e os dados de ponto de toque ajustados.

Retornar valor

Se essa função for bem-sucedida, ela retornará TRUE.

Caso contrário, retornará FALSE. Para recuperar informações de erro estendidas, chame a função GetLastError .

Comentários

Para consistência com o Windows, as estruturas que lidam com WM_TOUCHHITTESTING devem usar os seguintes princípios para direcionamento:

  • Inclusão: se o ponto de toque estiver dentro dos limites de um controle, o ponto de toque não será alterado.
  • Interseção: inclua apenas os controles que cruzam a geometria de contato.
  • Ordem Z: se mais de um controle cruza a geometria de contato e os controles se sobrepõem, o controle mais alto na ordem z recebe prioridade.
  • Ambiguidade: se mais de um controle cruza a geometria de contato e os controles não se sobrepõem, o controle mais próximo do ponto de toque original recebe prioridade.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Nenhum compatível
Plataforma de Destino Windows
Cabeçalho winuser.h
Biblioteca User32.lib
DLL User32.dll

Confira também

Funções