地图事件操作
本节目录
地图事件说明
开发GIS应用,接收和处理各种事件是必不可少的。当地图插件初始化完成后便可以捕获动作事件操作,如键盘按下,鼠标双击等。
MapViewerEvents类中定义了地图的相关事件,列表如下
| 成员 |
说明 |
| keyPressed |
键盘按下 |
| lButtonDblClick |
鼠标左键双击 |
| lButtonDown |
鼠标左键按下 |
| lButtonUp |
鼠标左键弹起 |
| mouseMove |
鼠标移动 |
| rButtonDblClick |
鼠标右键双击 |
| rButtonDown |
鼠标右键按下 |
| rButtonUp |
鼠标右键弹起 |
| zoomWindow |
地图窗口发生缩放 |
下面分别介绍上面列出的这些方法
键盘按下
键盘按下是由MapViewerEvents类的keyPressed()方法实现的。详细定义如下:
public void keyPressed(int, int)
参数列表:
| 类型 |
名称 |
说明 |
| int |
flag |
保留 |
| int |
keyCode |
键值 |
使用方法:
<script language="javascript" for="oMapViewer" event="keyPressed(flag, keyCode)">
alert("键值: " + keyCode);
</script>
鼠标左键双击
鼠标左键双击是由MapViewerEvents类的lButtonDblClick()方法实现的,它的具体定义为:
public void lButtonDblClick(long, double, double)
参数列表:
| 类型 |
名称 |
说明 |
| long |
flag |
保留 |
| double |
x |
逻辑坐标X |
| double |
y |
罗极坐标Y |
使用方法:
<script language="javascript" for="oMapViewer" event="lButtonDblClick(flag, x, y)">
alert("坐标X: " + x + " 坐标Y: " + y);
</script>
鼠标左键按下
鼠标左键按下是由MapViewerEvents类的lButtonDown()方法实现的,它的具体定义为:
public void lButtonDown(long, double, double)
参数列表:
| 类型 |
名称 |
说明 |
| long |
flag |
保留 |
| double |
x |
逻辑坐标X |
| double |
y |
逻辑坐标Y |
使用方法:
<script language="javascript" for="oMapViewer" event="lButtonDown(flag, x, y)">
alert("坐标X: " + x + " 坐标Y: " + y);
</script>
鼠标左键弹起
鼠标左键弹起是由MapViewerEvents类的lButtonUp()方法实现的,它的具体定义为:
public void lButtonUp(long, double, double)
参数列表:
| 类型 |
名称 |
说明 |
| long |
flag |
保留 |
| double |
x |
逻辑坐标X |
| double |
y |
逻辑坐标Y |
使用方法:
<script language="javascript" for="oMapViewer" event="lButtonUp(flag, x, y)">
alert("坐标X: " + x + " 坐标Y: " + y);
</script>
鼠标移动
鼠标左键按下是由MapViewerEvents类的mouseMove()方法实现的,它的具体定义为:
public void mouseMove(long, double, double)
参数列表:
| 类型 |
名称 |
说明 |
| long |
flag |
保留 |
| double |
x |
逻辑坐标X |
| double |
y |
逻辑坐标Y |
使用方法:
<script language="javascript" for="oMapViewer" event="mouseMove(flag, x, y)">
window.status = "坐标X:" + x + "坐标Y:" + y;
</script>
鼠标右键双击
鼠标右键双击是由MapViewerEvents类的rButtonDblClick()方法实现的,它的具体定义为:
public void rButtonDblClick(long, double, double)
参数列表:
| 类型 |
名称 |
说明 |
| long |
flag |
保留 |
| double |
x |
逻辑坐标X |
| double |
y |
逻辑坐标Y |
使用方法:
<script language="javascript" for="oMapViewer" event="rButtonDblClick(flag, x, y)">
alert("坐标X: " + x + " 坐标Y: " + y);
</script>
鼠标右键按下
鼠标右键按下是由MapViewerEvents类的rButtonDblDown()方法实现的,它的具体定义为:
public void rButtonDblDown(long, double, double)
参数列表:
| 类型 |
名称 |
说明 |
| long |
flag |
保留 |
| double |
x |
逻辑坐标X |
| double |
y |
逻辑坐标Y |
使用方法:
<script language="javascript" for="oMapViewer" event="rButtonDown(flag, x, y)">
alert("坐标X: " + x + " 坐标Y: " + y);
</script>
鼠标右键弹起
鼠标右键弹起是由MapViewerEvents类的rButtonUp()方法实现的,它的具体定义为:
public void rButtonUp(long, double, double)
参数列表:
| 类型 |
名称 |
说明 |
| long |
flag |
保留 |
| double |
x |
逻辑坐标X |
| double |
y |
逻辑坐标Y |
使用方法:
<script language="javascript" for="oMapViewer" event="rButtonUp(flag, x, y)">
alert("坐标X: " + x + " 坐标Y: " + y);
</script>
地图窗口发生缩放
地图窗口发生缩放是由MapViewerEvents类的zoomWindow()方法实现的,它的具体定义为:
public void zoomWindow(double, double, double, double)
参数列表:
| 类型 |
名称 |
说明 |
| double |
llx |
左下角X逻辑坐标 |
| double |
lly |
左下角Y逻辑坐标 |
| double |
urx |
右上角X逻辑坐标 |
| double |
ury |
右上角Y逻辑坐标 |
使用方法,当浏览器窗口发生缩放的时候触发此事件:
<script language="javascript" for="oMapViewer" event="zoomWindow(llx, lly, urx, ury)">
alert("左下角X逻辑坐标:" + llx + " 左下角Y逻辑坐标:" + lly + "右上角X逻辑坐标" + urx + "右上角Y逻辑坐标: " + ury);
</script>