Javascript 如何使用openlayers js库在我的“编辑工具栏”中添加拖动功能?

Javascript 如何使用openlayers js库在我的“编辑工具栏”中添加拖动功能?,javascript,Javascript,我的编辑工具栏中有点、多边形、线、手用于地图拖动,现在当我创建任何点或线时,我想通过拖动地图上的特定标记来更改其位置,如何在编辑工具栏中添加此选项。 代码如下: OpenLayers编辑工具栏示例 <link rel="stylesheet" href="OpenLayers/theme/default/style.css" type="text/css"> <!--[if lte IE 6]> <link

我的编辑工具栏中有点、多边形、线、手用于地图拖动,现在当我创建任何点或线时,我想通过拖动地图上的特定标记来更改其位置,如何在编辑工具栏中添加此选项。 代码如下:

OpenLayers编辑工具栏示例

        <link rel="stylesheet" href="OpenLayers/theme/default/style.css" type="text/css">
        <!--[if lte IE 6]>
            <link rel="stylesheet" href="../theme/default/ie6-style.css" type="text/css">
        <![endif]-->
        <link rel="stylesheet" href="style.css" type="text/css">
        <script src="OpenLayers/OpenLayers.js"></script>
        <script src="OpenLayers/lib/Firebug/firebug.js"></script>
        <script type="text/javascript">
            var lon = 5;
            var lat = 40;
            var zoom = 5;
            var map, layer;

            function init(){
                layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
                        "http://vmap0.tiles.osgeo.org/wms/vmap0", {layers: 'basic'} );

                vlayer = new OpenLayers.Layer.Vector( "Editable" );
                map = new OpenLayers.Map( 'map', {
                    controls: [
                        new OpenLayers.Control.PanZoom(),
                        new OpenLayers.Control.EditingToolbar(vlayer)                            
                    ]
                });

                map.addLayers([layer, vlayer]);

                map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);


                var click = new OpenLayers.Control.Click();
                map.addControl(click);
                click.activate();

            }


             OpenLayers.Control.Click = OpenLayers.Class(OpenLayers.Control, {                
            defaultHandlerOptions: {
                'single': true,
                'double': false,
                'pixelTolerance': 0,
                'stopSingle': false,
                'stopDouble': false
            },

            initialize: function(options) {
                this.handlerOptions = OpenLayers.Util.extend(
                    {}, this.defaultHandlerOptions
                );
                OpenLayers.Control.prototype.initialize.apply(
                    this, arguments
                ); 
                this.handler = new OpenLayers.Handler.Click(
                    this, {
                        'click': this.trigger
                    }, this.handlerOptions
                );
            }, 

            trigger: function(e) {
                var lonlat = map.getLonLatFromViewPortPx(e.xy);

                alert("You clicked near " + lonlat.lat + " N, " +
                                          + lonlat.lon + " E");
            }

        });
        </script>
    </head>
    <body onload="init()">
        <h1 id="title">Editing Toolbar Example</h1>

        <div id="tags">
            digitizing, point, line, linestring, polygon, editing
        </div>

        <p id="shortdesc">
            Demonstrate polygon, polyline and point creation and editing tools.
        </p>

        <div id="panel"></div>
        <div id="map" style="width: 1000px; height:500px;" ></div>

        <div id="docs"></div>
    </body>
</html>