다음을 통해 공유


이벤트 좌표 변환

컨트롤에 대한 96 사양을 사용하려면 컨트롤에서 발생한 이벤트에 대해 전달된 좌표가 HIMETRIC에서 포인트 기반이 되는 것으로 변경되어야 합니다. 이 변경은 속성 및 메서드에 맞춰 좌표의 이벤트 전달을 가져오므로 좌표 변환은 더 이상 컨테이너의 책임이 아닙니다. 이렇게 하면 컨트롤이 예상하지 못한 좌표 기반을 사용하여 이벤트를 발생시키는 경우 특정 호환성 문제가 발생합니다. 이는 96 제어 컨테이너가 다음과 같이 이전 96 이전 컨트롤을 호스팅하는 경우에만 문제가 됩니다.

  • 이전의 96 이전 컨테이너가 96 컨트롤을 호스트하는 경우 컨트롤은 이벤트 좌표를 포인트로 표시하므로 컨테이너가 매개 변수 형식을 인식해야 하므로 컨테이너에 문제가 발생하지 않아야 합니다.
  • 96 컨테이너가 96 이전 컨트롤을 호스트하는 경우 컨트롤은 좌표가 있는 컨테이너를 표시하고 필요한 모든 변환에 컨테이너를 예상합니다. 그러나 96 컨테이너는 컨트롤이 96 컨트롤 사양을 준수하고 해당 좌표를 포인트로 표시할 것으로 예상합니다. 컨트롤은 컨테이너에서 제공하는 IOleControlSite 인터페이스에서 TransformCoords 메서드를 속성 및 메서드와 동일한 방식으로 사용합니다.

따라서 96개 이전 컨트롤을 호스팅하는 96개 컨테이너의 사용자는 이벤트가 발생할 때 좌표의 추가 변환이 필요할 수 있음을 알고 있어야 합니다.