0

次のコードを使用して、同心リング オブジェクト/コレクションを作成しました。次に、コレクションをマップ上で移動/ドラッグして、それらのリング内の関心のある場所を強調表示したいと思います。ご覧のとおり、イベント ハンドラーをコレクションに追加しましたが、マップ上でコレクションをドラッグしようとすると、イベント ハンドラーがトリガーされません。アイデアはありますか?イベントハンドラーが配置されていることを確認しました。

Bing API の v7 を使用します。以下のコード例ではハンドラーを省いています。単純なアラート ("got here"); を行うだけです。

function GetMap(){

       map.entities.push(AddRings(center));
}




 function AddRings(center) {
        var circleCollection = new Microsoft.Maps.EntityCollection();
        circleCollection.push(AddCircle(center.latitude, center.longitude, .05, new MM.Color(155, 2, 2, 2)));
        circleCollection.push(AddCircle(center.latitude, center.longitude, 5, new MM.Color(255, 0, 255, 0)));
        circleCollection.push(AddCircle(center.latitude, center.longitude, 20, new MM.Color(255, 255, 0, 0)));
        circleCollection.push(AddCircle(center.latitude, center.longitude, 10, new MM.Color(255, 0, 0, 255)));
        MM.Events.addHandler(circleCollection, 'mousedown', StartDragHandler);
        MM.Events.addHandler(circleCollection, 'mouseup', EndDragHandler);
        MM.Events.addHandler(circleCollection, 'mouseout', EndDragHandler);

        return circleCollection;
    }
4

1 に答える 1

0

EntityCollection クラスにはマウス イベントがありません。このコレクションに含まれるイベントは、http: //msdn.microsoft.com/en-us/library/gg427616.aspxで確認できます。

コレクション内の各シェイプにイベントを追加する必要があります。

また、複雑なポリゴンを描画しようとしているようです。AdvanceShapes モジュールの使用を検討しましたか: http://msdn.microsoft.com/en-us/library/hh921952.aspx

于 2013-11-29T22:56:52.103 に答える