SuperMap.Control.Panel

该类表示控件的容器。

可以通过两种方法在 map 上添加控件,可通过在实例化 map 时 设置 map 的 options 属性添加,还可以通过 map 的 addControl() 方法添加,如下示例所示

//定义一个矢量图层 vectorLayer 用于 ModifyFeature 控件进行要素的编辑
var vector = new SuperMap.Layer.Vector("vector layer");
//实例化 Panel 控件
var toolbar = new SuperMap.Control.Panel();
// Panel 控件上添加控件
toolbar.addControls(new SuperMap.Control.ModifyFeature(vector));

// Panel 控件添加到 map 上
// 下面是在实例化 map 时设置 map 的 options 属性添加
var map = new SuperMap.Map("map",{controls:[
    toolbar
]});

// 或者通过 map 的 addControl() 方法添加
var map = new SuperMap.Map("map");
map.addControl(toolbar);

Inherits from

Summary
SuperMap.Control.Panel 该类表示控件的容器。
Properties
allowDepress {Boolean} 如果设为true,点击 SuperMap.Control.TYPE_TOOL 控件图标使其停用。默认为false。
autoActivate {Boolean} 设置该类添加到地图时,是否自动激活。默认为 true。
defaultControl {SuperMap.Control} 被激活的控件。如果saveState设为true,在panel控件被激活之后defaultControl属性将失效。
saveState {Boolean} 如果设置为true,当前panel控件状态可以存储和恢复,默认为false。
Constructor
SuperMap.Control.Panel 创建一个新的panel控件。
Functions
activate 激活控件及其相关的处理事件(handler),控件失效调用deactivate方法。
activateControl 当用户点击表示控件面板的图标时调用此方法。
addControls 创建工具栏,在其之上添加一系列的控件,可以在控件面板上添加单独的一个或者一组控件。
deactivate 使控件及其相关的处理事件(handler)失效。
destroy 销毁控件,释放相关资源。
getControlsBy 根据给定条件匹配得到的控件列表。
getControlsByName 根据给定名称匹配到的控件名称列表。

Properties

autoActivate

{Boolean} 设置该类添加到地图时,是否自动激活。默认为 true。

defaultControl

{SuperMap.Control} 被激活的控件。如果saveState设为true,在panel控件被激活之后defaultControl属性将失效。

saveState

{Boolean} 如果设置为true,当前panel控件状态可以存储和恢复,默认为false。

allowDepress

{Boolean} 如果设为true,点击 SuperMap.Control.TYPE_TOOL 控件图标使其停用。默认为false。

Constructor

SuperMap.Control.Panel

创建一个新的panel控件。

panel上的每个控件都有个小图标表示,当点击一个小图标时,activateControl方法被调用。

panel上控件特有的属性

type {Number} SuperMap.Control.TYPE_TOOL , SuperMap.Control.TYPE_TOGGLE , SuperMap.Control.TYPE_BUTTON 其中之一,默认为SuperMap.Control.TYPE_TOOL。
title {string} 当鼠标滑到表示控件图标上时显示的文本。

control的type属性

<SuperMap.Control.TYPE_TOOL> 一个控件被激活那么在同一panel上的同类型的其他控件将失效。此类型为默认类型。
<SuperMap.Control.TYPE_TOGGLE> 切换控件的激活状态。
<SuperMap.Control.TYPE_BUTTON> <SuperMap.Control.Button.trigger> 方法被调用,但是其激活状态不会发生改变。

Parameters

options {Object} 一个可选的对象,其属性将用于扩展控件。

Functions

destroy

destroy: function()

销毁控件,释放相关资源。

activate

activate: function()

激活控件及其相关的处理事件(handler),控件失效调用deactivate方法。

deactivate

deactivate: function()

使控件及其相关的处理事件(handler)失效。

activateControl

activateControl: function ( control )

当用户点击表示控件面板的图标时调用此方法。

Parameters

control {SuperMap.Control}

addControls

addControls: function( controls )

创建工具栏,在其之上添加一系列的控件,可以在控件面板上添加单独的一个或者一组控件。

Parameters

controls {SuperMap.Control} 在面板上添加的控件。

getControlsBy

getControlsBy: function( property,
match )

根据给定条件匹配得到的控件列表。

Parameter

property {String} 用来匹配控件的属性。
match {String | Object} 匹配字符串。可以是正则表达式的文字或者对象,也可以用test方法。对于正规表达式,如果 match.test(control[property])的值是true,则匹配到的控件将会放到数组中被返回。如果没有匹配到控件则返回空数组。

Returns

{Array(SuperMap.Control)} 根据给定条件匹配到的控件列表。如果没有匹配的控件,则返回空列表。

getControlsByName

getControlsByName: function( match )

根据给定名称匹配到的控件名称列表。

Parameter

match {String | Object} 空间名称。可以是正则表达式的文字或者对象,可以用test方法。对于正则表达式,如果 name.test(control.name) 的值是true,则匹配到的控件将会放到数组中被返回。如果没有匹配到控件则返回空数组。

Returns

{Array(SuperMap.Control)} 根据给定名称匹配到的控件名称列表,如果没有匹配到则返回空数组。

控件类,提供了多种控件,比如比例尺控件,鹰眼控件,缩放条控件等等。 用于处理 Control 事件的事件处理器 Handler,内部封装了一系列的浏览器事件, 在控件(control)实现过程中可调用Handler,通过 active和 deactive两个方法,实现动态的激活和注销。
destroy: function()
销毁控件,释放相关资源。
activate: function()
激活控件及其相关的处理事件(handler),控件失效调用deactivate方法。
deactivate: function()
使控件及其相关的处理事件(handler)失效。
activateControl: function ( control )
当用户点击表示控件面板的图标时调用此方法。
addControls: function( controls )
创建工具栏,在其之上添加一系列的控件,可以在控件面板上添加单独的一个或者一组控件。
getControlsBy: function( property,
match )
根据给定条件匹配得到的控件列表。
getControlsByName: function( match )
根据给定名称匹配到的控件名称列表。
Close