mapgis二次开发,无法浏览激活区点、线、区、网的属性,大家帮我看看代码

发布时间:2024-05-16 10:01 发布:上海旅游网

问题描述:

代码

Public PubComPrj As Map
Dim tempLayer As MapLayer

Dim pntArea As pntArea
Dim linArea As linArea
Dim regArea As regArea
Dim netArea As netArea
'装入Map
Private Sub mnuOpenMap_Click()
On Error Resume Next

'关闭Map
mnuQuitMap_Click

'创建Map对象
Set PubComPrj = New Map

If PubComPrj Is Nothing Then
Exit Sub
End If

'装入文件
PubComPrj.LoadMapFile

'更新显示

EditView1.Map = PubComPrj

MapTreeCtrl1.SetMap PubComPrj

Set tempLayer = PubComPrj.ActiveLayer(gisREG)
Set tempLayer = PubComPrj.ActiveLayer(gisLIN)
Set tempLayer = PubComPrj.ActiveLayer(gisPNT)
Set tempLayer = PubComPrj.ActiveLayer(gisNET)

If Not tempLayer Is Nothing Then

Set linArea = tempLayer.WorkArea
Set regArea = tempLayer.WorkArea
Set pntArea = tempLayer.WorkArea
Set netArea = tempLayer.WorkArea

EditView1.LinkAttSwitch = True
EditView1.AttachAttWorkArea regArea, gisREG_ENTITY
EditView1.AttachAttWorkArea netArea, gisNET_ENTITY
EditView1.AttachAttWorkArea linArea, gisLIN_ENTITY
EditView1.AttachAttWorkArea pntArea, gisPNT_ENTITY

GisAttEdit1.AttachArea netArea, gisNET_ENTITY
GisAttEdit1.AttachArea regArea, gisREG_ENTITY
GisAttEdit1.AttachArea linArea, gisLIN_ENTITY
GisAttEdit1.AttachArea pntArea, gisPNT_ENTITY

tempLayer.SelectFlag = 1

End If

End Sub
Private Sub EditView1_CurAttElement(ByVal lNo As Long)

GisAttEdit1.GotoAtt lNo

End Sub

Private Sub Form_Load()

Set PubComPrj = New Map

End Sub

Private Sub Form_Unload(Cancel As Integer)

Set PubComPrj = Nothing

End Sub

Private Sub GisAttEdit1_CurRcdFldNo(ByVal rcdNo As Long, ByVal fldNo As Integer)

EditView1.GotoElement regArea, rcdNo, gisREG_ENTITY

EditView1.GotoElement netArea, rcdNo, gisNET_ENTITY

EditView1.GotoElement linArea, rcdNo, gisLIN_ENTITY

EditView1.GotoElement pntArea, rcdNo, gisPNT_ENTITY

End Sub
Dim pntArea As pntArea
Dim linArea As linArea
Dim regArea As regArea
Dim netArea As netArea

这些声明里面,为什么pntArea不是默认成大写PntArea? mapgis二次开发,不能浏览点、线等的属性,请大家帮我看看代码哪里出了问题?

问题解答:

mapgis二次开发,无法浏览激活区点、线、区、网的属性,大家帮我看看代码这个旅游问答期待您的解答,请登录账号或关注微信公众号回答这个问题。

热点新闻