文档详情

利用VB和MAPGIS基本控件做二次开发..doc

发布:2017-01-06约3.03千字共5页下载文档
文本预览下载声明
利用VB和MAPGIS基本控件学做二次开发 摘要:本文介绍了利用VB进行MAPGIS二次开发的原理、方法和实现技术,为用户进行复杂的应用开发提供了技术基础。 关键词:VB,MAPGIS,二次开发 微软公司的Visual Basic是一个简单易学的可视化开发工具,MAPGIS提供了很多功能强大的图形和属性管理控件,并为二次开发提供了许多完备的功能接口。利用VB和MAPGIS基本控件可以做一些基本的开发,满足用户的一些特殊需要。本文将以区文件操作开发为例,讲解二次开发的原理、方法、要点和实现技术。 第一步:首先建立VB开发环境。 安装MAPGIS SDK软件到MAPGIS安装路径下。 添加声明模块vbW60_Area.bas,该模块包含MAPGIS基本参数及结构定义、消息与版本定义等。添加的方法是:在VB程序中点取Project菜单下的Add Module,添加vbW60_Area.bas文件,该文件在MAPGIS安装程序的Basic子目录下。 添加参照引用文件。这些文件是MAPGIS控件功能实现的外部参照。添加的方法是:在VB程序中点取Project菜单下的“References”,将MapGisBasCtl1 1.0 Type Library、MapGisBasCtl2 1.0 Type Library、MapGisBasCom 1.0 Type Library、MapGisBasCtl 1.0 Type Library四个参照文件打钩,如下图所示。 设置可执行文件输出目录。生成的可执行文件必须放在与MAPGIS安装目录的动态库和控件相同的目录中才能执行。设置的方法是:点取File菜单下的Make *.exe..,选择MAPGIS动态连接库所在的目录,如PROGRAM。 第二步:设计功能界面。 本文中演示的基本设计功能描述如下。程序分为四个主要的菜单:文件、编辑、窗口和帮助,每个菜单有分别有相应的功能。 主界面上还要放置图形编辑和显示控件:EditView.ocx。首先要将该控件添加到控件面板中,方法是:在VB程序中点取Project菜单下的“Components”,将EditView ActiveX Control Module控件打钩,如下图所示。 然后按照VB的常规编程设计方法使用该控件,在FORM窗体上划出该控件的大小和位置。设置各个控件和菜单的属性等参数。 第三步:功能代码的实现。 本例中程序主窗体名称为frmmapedit,图形控件名称为ev1。下面是MAPGIS基本控件的属性、方法和事件的实现的程序源代码。 定义新的区工作区 Dim regA As New RegArea 程序自述 Private Sub aboutme_Click() frmAbout.Show End Sub 弧段转线 Private Sub ArcToLne_Click() ev1.ArcToLine End Sub 清除窗口并及时更新显示 Private Sub Clear_Click() ev1.CleanWindow ev1.RestoreWindow End Sub 编辑区的属性结构 Private Sub EditRegAttStru_Click() ev1.EditRegAttStru End Sub 编辑区的参数并及时更新显示 Private Sub EditRegPara_Click() ev1.EditGiveRegion ev1.UpdateWindow End Sub 图形造区 Private Sub Figure2Area_Click() ev1.MakeGraphRegion ev1.UpdateWindow End Sub 输入区 Private Sub FillReg_Click() ev1.MakeRegion ev1.UpdateWindow End Sub 关闭区文件并及时更新显示 Private Sub FlieClose_Click() regA.Clear ev1.RestoreWindow End Sub 新建区文件 Private Sub FlieNew_Click() regA.Save ev1.RegArea = regA End Sub 打开区文件并及时显示 Private Sub FlieOpen_Click() regA.Load ev1.RegArea = regA ev1.RestoreWindow End Sub 打印区文件 Private Sub FliePrint_Click() If Not regA.Empty Then cdg.ShowPrinter End If End Sub 退出 Private Sub FlieQ
显示全部
相似文档