GIS应用系统查询的实现.docVIP

  • 3
  • 0
  • 约1.33万字
  • 约 16页
  • 2016-10-09 发布于贵州
  • 举报
GIS应用系统查询的实现

重 庆 交 通 大 学 学 生 实 验 报 告 实验课程名称 地理信息系统软件二次开发 开课实验室 空间数据处理实验室 学 院 河海学院 年级 2008 专业班 1 学 生 姓 名 学 号 开 课 时 间 2011 至 2012 学年第 1 学期 总 成 绩 教师签名 目录 实验六 GIS应用系统中查询的实现 3 一、实验内容 3 二、实验要求 3 三、实验步骤 3 1、系统完善; 3 2、表达式查询 4 3、距离查询 8 4、图形查询 12 四、实验成果 15 五、实验心得 15 实验六 GIS应用系统中查询的实现 一、实验内容 1、学习运用代码在所编系统中进行查询; 2、完善系统。 二、实验要求 1、完善系统,实现在主窗体中调用多个窗体; 2、实现表达式查询功能; 3、实现距离查询功能; 4、实现图形查询功能。 三、实验步骤 1、系统完善; 在主界面窗体中完善系统界面,在“查询”菜单栏下添加达式查询、距离查询、图形查询等选项,如图6-1 图6-1(系统界面) 2、表达式查询 由于学生水平局限,不能够在一个窗体中完成所有功能的,因此此实验在多个窗体中实现,添加名为“Frmsearchexpression”的窗口,设置其界面。 在代码窗口中写入以下代码: 按照面积值查找 Option Explicit Dim g_symSelection As MapObjects2.Symbol Private Sub Map1_AfterLayerDraw(ByVal index As Integer, ByVal canceled As Boolean, ByVal hDC As stdole.OLE_HANDLE) Dim strExpression As String Dim recSelection As MapObjects2.Recordset If index 0 Then Exit Sub If Map1.Layers(0).Records.Fields(Combo1.List(Combo1.ListIndex)).Type = moString Then strExpression = Combo1.List(Combo1.ListIndex) Combo2.List(Combo2.ListIndex) Combo3.Text Else strExpression = Combo1.List(Combo1.ListIndex) Combo2.List(Combo2.ListIndex) Combo3.Text End If Set recSelection = Map1.Layers(0).SearchExpression(strExpression) If Not recSelection.EOF Then Map1.DrawShape recSelection, g_symSelection End If Set recSelection = Nothing End Sub Private Sub Command1_Click() Map1.Refresh End Sub Private Sub Form_Resize() Map1.Move 60, 60, Me.ScaleWidth - 180, Me.ScaleHeight - 2000 Label1.Move Map1.Left, Map1.Top + Map1.Height + 180, Map1.Width / 2, 400 Combo1.Move Label1.Left, Label1.Top + Label1.Height + 60, Map1.Width * 0.4 Combo2.Move Combo1.Left + Combo1.Width + 60, Combo1.Top, (Map1.Width * 0.2) - 60 Combo3.Move Combo2.Left + Combo2.Width + 60, Combo1.Top, Map1.Width * 0.4 Command1.Move (Me.ScaleWidth / 2) - 600, Combo1.Top + Combo1.Height + 300, 12

文档评论(0)

1亿VIP精品文档

相关文档