打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
实现图层管理:MapX开发基础教程(3)

实现图层管理:MapX开发基础教程(3)

时间:2010-08-31 21:20来源:互联网 作者:格格 点击:117次
MapX开发基础教程(3):实现图层管理。

转载请注明出处:http://gisbase.czm.cn 使用教材《GIS设计与开发》科学出版社


MapX是按图层组织地图的,每个图层包含了整个地图的某一个方面。
图层集对象是由图层对象组成的集合对象,有自己的属性和方法。
对应的类为Layers

图层集(Layers)对象的属性:

Count:返回图层的数目
Map1.Layers.Count
Item(层名或索引):返回图层对象
Dim lyr As Layer
Set lyr = Map1.Layers.Item(1)
Dim lyr As Layer
Set lyr = Map1.Layers.Item("buspoint")
Dim lyr As Layer
Set lyr = Map1.Layers("buspoint")
Dim lyr As Layer
Set lyr = Map1.Layers(1)
Bounds:得到集合对象的地理范围
map1.Bounds=map1.Layers.Bounds

图层集对象常用的方法:

Layer Control
CreateLayer
Add
Remove
Move

自定义图层控制对话框
Private Sub cmdUp_Click()
If List1.ListIndex > 0 Then
Form1.Map1.Layers.Move List1.ListIndex + 1, List1.ListIndex

Dim curListIndex As Integer
curListIndex = List1.ListIndex

Dim str As String
str = List1.List(curListIndex)

List1.List(curListIndex) = List1.List(curListIndex - 1)
List1.List(curListIndex - 1) = str

List1.ListIndex = curListIndex - 1
End If
End Sub

图层对象的常用属性

KeyField:用于指定图层的MapInfo属性表中的字段。指定后,就可以通过Feature的KeyValue属性,得到字段的值。
Map1.Layers.Item(“城市”).KeyField=“City_Name”
Str=Map1.Layers.Item(“城市”).AllFeatures.Item(1).KeyValue

Style属性:用于定义图层的样式。可以通过这个属性覆盖图层中图元默认的样式。图层的OverrideStyle属性应该为true。
注:
该属性的改变并不真正更改图元的样式
若一个图层中不仅有点而且有线、多边形等,设定Style为其中一种(比如为点样式),则其他类型(线、多边形)的图元的样式会发生改变(变为默认的样式)。
Style对象
Symbol——符号特征的属性
Line——直线特征的属性
Region——区域特征的属性
Text——文本特征的属性
PickSymbol
PickText
PickLine
PickRegion

Dim st as new style
With st
.SymbolCharacter=36
.SymbolFontColor=miColorRed
.SymbolFont.Size=20
End With
Map1.Layers.Item(1).OverrideStyle=true
Set Map1.Layers.Item(1).Style=st

Dim st as new Sytle
St.pickSymbol
Map1.Layers.Item(1).OverrideStyle=true
Set Map1.Layers.Item(1).Style=st

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
使用MapX开发实现若干小功能
如何实现点击MAPINFO地图就打开与该地图有关的数据表
从数据库绘制MapX地图
C#进行MapX二次开发之MapX基础知识
MapX样式的详细解释
基于MapX的GIS动态操作与实现
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服