Partilhar via


Tradução de coordenadas de eventos

A especificação 96 para controles requer que as coordenadas passadas para eventos disparados pelo controle deixem de ser HIMÉTRICAS para serem baseadas em pontos. Essa alteração alinha o evento de passagem de coordenadas com as propriedades e métodos e, portanto, a tradução de coordenadas não é mais responsabilidade do contêiner. Isso levanta certos problemas de compatibilidade quando um controle dispara eventos usando uma base de coordenadas que ele não está esperando, isso só deve ser um problema quando um contêiner de controle 96 está hospedando um controle pré-96 mais antigo da seguinte maneira:

  • Quando um contêiner anterior a 96 mais antigo hospeda um controle 96, o controle apresentará as coordenadas do evento como pontos, isso não deve causar problemas ao contêiner, pois o contêiner deve reconhecer o tipo de parâmetro.
  • Quando um contêiner 96 hospeda um controle pré-96, o controle apresentará o contêiner com coordenadas e esperará que o contêiner faça qualquer tradução necessária. No entanto, o contentor 96 espera que um controlo esteja em conformidade com a especificação dos controlos 96 e apresente as suas coordenadas como pontos. O controle usa o métodoTransformCoords na interface deIOleControlSite dofornecida pelo contêiner da mesma forma que faz para propriedades e métodos para conseguir isso.

Como resultado, o usuário de um contêiner 96 que hospeda controles pré-96 precisará estar ciente de que mais traduções de coordenadas podem ser necessárias quando os eventos são acionados.