'通用变量定义
Private lyrname As String
Private Const Searchtolpixels = 3
Public mark As Integer
Public fd As Boolean, sx As Boolean, my As Boolean, cX As String
Public lineMy As New MapObjects2.line
Public poly As New MapObjects2.Polygon
Public rect As New MapObjects2.Rectangle
Public cir As New MapObjects2.Ellipse
Public pt1 As New MapObjects2.Point
Public BufPoly As New MapObjects2.Polygon
Dim HasRec As Boolean
Dim recsParcel As MapObjects2.Recordset
Dim sym As New Symbol
Dim SymBuf As New Symbol
Dim SymSel As New Symbol
Dim isLabelShow As Integer
Dim dr1 As DrawRect
Dim dd As String
' 面积计算
Private Sub AreaCal_Click()
mark = 2
Map1.MousePointer = moCross
End Sub
'输入查询地物名称
Private Sub Command1_Click()
If Text1.Text = "" Then
MsgBox "请输入要查询的地物!", vbOKOnly, "提示!"
Else
If HasRec = False Then
End If
'查询三个图层的名称并且显示
For i = 0 To 2
Set mylyr = Map1.Layers(i)
Set recsParcel = mylyr.SearchExpression("名称 like " + "'" + "%" + Text1.Text + "%" + "'")
If i <> 3 Then
End If
Next i
Dim stats As MapObjects2.Statistics
Set stats = recsParcel.CalculateStatistics("FeatureID")
iParcel = stats.Count
If stats.Count < 1 Then
MsgBox "没有找到"
Else: Map1.FlashShape recsParcel.Fields("Shape").Value, 3
If Not recsParcel.EOF Then
form5.ListView1.ListItems.Clear
For Each fld In recsParcel.Fields
Set newItem = form5.ListView1.ListItems.Add
newItem.Text = fld.Name
newItem.SubItems(1) = fld.ValueAsString
Next fld
aString = recsParcel.Fields("名称").ValueAsString
If aString = "运动场" Then
dd = App.Path + "\..\" + "图片" + "\" + "3.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "图书馆" Then
dd = App.Path + "\..\" + "图片" + "\" + "11.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "校行政楼" Then
dd = App.Path + "\..\" + "图片" + "\" + "9.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "B1教学楼" Then
dd = App.Path + "\..\" + "图片" + "\" + "8.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "A1教学楼" Then
dd = App.Path + "\..\" + "图片" + "\" + "2.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "八一路" Then
dd = App.Path + "\..\" + "图片" + "\" + "7.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "弘毅广场" Then
dd = App.Path + "\..\" + "图片" + "\" + "11.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "综合教学楼2" Then
dd = App.Path + "\..\" + "图片" + "\" + "17.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "综合实验楼1" Then
dd = App.Path + "\..\" + "图片" + "\" + "16.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "艺术楼" Then
dd = App.Path + "\..\" + "图片" + "\" + "14.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf Text1.Text = "" Then
Else: dd = App.Path + "\..\" + "图片" + "\" + "13.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
End If
form5.Image1 = LoadPicture(dd)
form5.Show
End If
Map1.Refresh
End If
End If
End Sub
'显示属性窗口
Private Sub Command4_Click()
If Text1.Text = "" Then
MsgBox "请输入要查询的地物!", vbOKOnly, "提示!"
Else
If HasRec = False Then
End If
'查询三个图层的名称并且显示
For i = 0 To 2
Set mylyr = Map1.Layers(i)
Set recsParcel = mylyr.SearchExpression("名称 = " + "'" + Text1.Text + "'")
If i <> 3 Then
End If
Next i
Dim stats As MapObjects2.Statistics
Set stats = recsParcel.CalculateStatistics("FeatureID")
iParcel = stats.Count
If stats.Count < 1 Then
MsgBox "没有找到"
Else: Map1.FlashShape recsParcel.Fields("Shape").Value, 3
If Not recsParcel.EOF Then
form5.ListView1.ListItems.Clear
For Each fld In recsParcel.Fields
'Set Recs = l.SearchByDistance(Loc, theTol, "")
Set newItem = form5.ListView1.ListItems.Add
newItem.Text = fld.Name
newItem.SubItems(1) = fld.ValueAsString
Next fld
aString = recsParcel.Fields("名称").ValueAsString
If aString = "运动场" Then
dd = App.Path + "\..\" + "图片" + "\" + "3.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "图书馆" Then
dd = App.Path + "\..\" + "图片" + "\" + "11.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "校行政楼" Then
dd = App.Path + "\..\" + "图片" + "\" + "9.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "B1教学楼" Then
dd = App.Path + "\..\" + "图片" + "\" + "8.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "A1教学楼" Then
dd = App.Path + "\..\" + "图片" + "\" + "2.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "八一路" Then
dd = App.Path + "\..\" + "图片" + "\" + "7.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "弘毅广场" Then
dd = App.Path + "\..\" + "图片" + "\" + "11.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "综合教学楼2" Then
dd = App.Path + "\..\" + "图片" + "\" + "17.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "综合实验楼1" Then
dd = App.Path + "\..\" + "图片" + "\" + "16.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
ElseIf aString = "艺术楼" Then
dd = App.Path + "\..\" + "图片" + "\" + "14.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
Else: dd = App.Path + "\..\" + "图片" + "\" + "13.jpg"
form5.Image1 = LoadPicture(dd)
form5.Show
End If
form5.Image1 = LoadPicture(dd)
form5.Show
End If
Map1.Refresh
End If
End If
End Sub
' 清理缓冲图形
Private Sub command6_Click()
Me.Map1.TrackingLayer.ClearEvents
Option1.Value = False
Option2.Value = False
Option3.Value = False
Option4.Value = False
Option5.Value = False
End Sub
' 距离量算
Private Sub DistanceCal_Click()
mark = 1
Map1.MousePointer = moCross
End Sub
Sub AddLegend()
' 加载图例
legend1.