イベント座標変換
96 のコントロール仕様では、コントロールによって起動されたイベントに対して渡される座標が HIMETRIC からポイント ベースに変更されるよう要求されます。 この変更により、座標のイベント受け渡しがプロパティおよびメソッドと一致するようになり、座標変換はコンテナーの責任ではなくなりました。 これにより、コントロールが予期しない座標ベースを使用してイベントを起動する場合に特定の互換性の問題が発生します。これは、次のように 96 コントロール コンテナが 96 より前の古いコントロールをホストしている場合にのみ問題となります。
- 96 より前の古いコンテナーが 96 コントロールをホストしている場合、コントロールはイベント座標をポイントとして表示します。コンテナーはパラメーター タイプを認識する必要があるため、これによってコンテナーに問題が発生することはありません。
- 96 コンテナが 96 より前のコントロールをホストする場合、コントロールはコンテナに座標を提示し、コンテナが必要な変換を行うことを期待します。 ただし、96 コンテナーは、コントロールが 96 コントロール仕様に準拠し、その座標を点として表すことを期待します。 コントロールは、コンテナーによって提供される TransformCoords インターフェイスで IOleControlSite メソッドを使用します。これは、プロパティとメソッドがこれを実現する場合と同じ方法で行います。
その結果、96 より前のコントロールをホストする 96 コンテナーのユーザーは、イベントの発生時にさらに座標を変換する必要がある可能性があることに注意する必要があります。