应用MapX编程实现地图数据查询
来源:互联网 发布:超恐怖的模型unity3d 编辑:程序博客网 时间:2024/05/11 19:37
0、综述
应用MapX控件实现查询的功能并不太难。MapX为我们提供了Find、FindFeature等对象,可以用来实现我们需要的功能:)
1、本程序实现从下列表中选择一个节点,并以此节点为中心进行进行定位的功能(实例以第一层RTUName属性的值进行查询)
Private Sub Command1_Click()
Dim FindObj As MapXLib.Find
Dim FoundFeature As FindFeature
'从要查询的RTU图层生成Find对象,并为这个对象设置要查询的FindDataSet、FindField属性
Set FindObj = Form1.Map1.Layers.Item(1).Find
Set FindObj.FindDataset = Form1.Map1.DataSets("RTU节点" & " dataset")
Set FindObj.FindField = FindObj.FindDataset.Fields("RTUName")
Set FoundFeature = FindObj.Search(Combo1.Text)
Me.Hide
' 关掉AutoRedraw是因为CenterX(Y)的改变就要刷新图层,AutoRedraw打开的话会造成二次刷新
Form1.Map1.AutoRedraw = False
Form1.Map1.CenterX = FoundFeature.CenterX
Form1.Map1.CenterY = FoundFeature.CenterY
Form1.Show
End Sub
2、把上面的程序稍微改写一下,实现按照用户输入的字段进行查询定位的功能:
Private Sub Command2_Click()
Dim FindObj As MapXLib.Find
Dim FoundFeature As FindFeature
'从要查询的RTU图层生成Find对象,并为这个对象设置要查询的FindDataSet、FindField属性
Set FindObj = Form1.Map1.Layers.Item(1).Find
Set FindObj.FindDataset = Form1.Map1.DataSets("RTU节点" & " dataset")
Set FindObj.FindField = FindObj.FindDataset.Fields("RTUName")
Set FoundFeature = FindObj.Search(Text1.Text)
If FoundFeature.FindRC Mod 10 = 1 Or FoundFeature.FindRC Mod 10 = 2 Then
Me.Hide
' 关掉AutoRedraw是因为CenterX(Y)的改变就要刷新图层,AutoRedraw打开的话会造成二次刷新
Form1.Map1.AutoRedraw = False
Form1.Map1.CenterX = FoundFeature.CenterX
Form1.Map1.CenterY = FoundFeature.CenterY
Form1.Show
Else
MsgBox "不存在该RTU节点!"
End If
End Sub
- 应用MapX编程实现地图数据查询
- VB+MapX编程实现地图数据查询
- VB+MapX编程实现地图数据查询
- 3S基础知识:MapInfo应用MapX编程实现地图数据查询
- 3S基础知识:MapX应用讲义—加载地图数据
- mapx实现查询
- 应用MapX编程两例
- 应用MapX编程两例
- 应用MapX编程两例
- 应用MapX编程两例
- MAPX地图数据与属性数据的关联
- 3S基础知识:MapX应用教程—创建地图对象
- 3S基础知识:MapX应用教程—查询
- MapX切割地图
- MapX系列-- 地图浏览
- MapX切割地图
- 新建Mapx地图文档
- 一、查询地图数据
- CMM概观
- 关于一些类病毒隐藏技术的设想
- 企业家与程序员──无声的火花
- 适合中小软件采用的矢量化地图的生成方法总结
- 应用MapX编程两例
- 应用MapX编程实现地图数据查询
- “磁性”窗口新篇
- 单品最佳采购量和最佳库存量的计算方法
- 如何用Visual C#做组件
- 用Visual Basic创建复杂窗体
- Command模式
- 建造者模式-Delphi述
- 用数据岛生成翻页程序
- “黑屏”隐藏实现