Hello World程序很重要,对于入门来说,它可以检测我们的环境、配置是否正确,感受程序的易用性等。

添加工具

由于我是使用的VS2017+ SuperMap iObject绿色免安装版,所以新建工程后,没有相关的工具可以拖放使用,在工具上新建选项卡,右键选择项,浏览选择SuperMap.UI.Controls、SuperMap.Mapping、SuperMap.Data三个引用。

则可以拖放了。(拖放大大降低了初学者入门的门槛,为VS的这种方式点赞)

注意以下几个问题:

(1)新建的工程Framework版本如果不是4.0工具箱中到看到任何SuperMap工具(这说明SuperMap是基于Framework4.0)的。

(2)如果是使用64位的dll(即Bin_x64下的文件),将不支持控件的拖放

(3)如果熟练了,可以使用代码方式实现初始化控件等。

添加引用

将上面三个引用添加到项目的引用中,即可开始代码的开发,由于使用的VS2017,所以就没有下面这个了,只能浏览文件路径选择了。SuperMap iObject 9支持的VS版本是2010和2012。

其他引用根据需要添加了。

添加代码

然后添加官方的示例代码:

  1. //******打开工作空间******
  2. private void toolStripOpen_Click(object sender, EventArgs e)
  3. {
  4. //设置公用打开对话框
  5. openFileDialog1.Filter = "SuperMap 工作空间文件(*.smwu)|*.smwu";
  6. //判断打开的结果,如果打开就执行下列操作
  7. if (openFileDialog1.ShowDialog() == DialogResult.OK)
  8. {
  9. //避免连续打开工作空间导致程序异常
  10. mapControl1.Map.Close();
  11. workspace1.Close();
  12. mapControl1.Map.Refresh();
  13. //定义打开工作空间文件名
  14. String fileName = openFileDialog1.FileName;
  15. //打开工作空间文件
  16. WorkspaceConnectionInfo connectionInfo = new WorkspaceConnectionInfo(fileName);
  17. //打开工作空间
  18. workspace1.Open(connectionInfo);
  19. //建立MapControl与Workspace的连接
  20. mapControl1.Map.Workspace = workspace1;
  21. //判断工作空间中是否有地图
  22. if (workspace1.Maps.Count == 0)
  23. {
  24. MessageBox.Show("当前工作空间中不存在地图!");
  25. return;
  26. }
  27. //通过名称打开工作空间中的地图
  28. mapControl1.Map.Open("世界地图_Day");
  29. //刷新地图窗口
  30. mapControl1.Map.Refresh();
  31. }
  32. }

  

注意以下几个问题:

(1)如果出现以下问题,请将平台的anycpu改为x86;

(2)如果你还在思考为什么SuperMap.Mapping的Version是7.0(见上图),那请停止思考,不要管它,官方人员解释说这不影响9.0的使用

(3)如果程序也没报错,打开后地图没有显示,看看是不是idesktop打开了此工作空间。

SuperMap入门3——Hello World的更多相关文章

  1. SuperMap iClient for JavaScript 新手入门

    地理信息系统(英语:Geographic Information System,缩写:GIS)是一门综合性学科,结合地理学与地图学,已经广泛的应用在不同的领域,是用于输入.存储.查询.分析和显示地理数 ...

  2. SuperMap iObject入门开发系列之二地下三维管线系统介绍

    本文是一位好友“托马斯”授权给我来发表的,介绍都是他的研究成果,在此,非常感谢. 上次对超图平台组件式开发进行介绍,这次介绍的是基于这个框架开发的地下三维管线系统.地下管线涉及给水.雨水.污水.燃气. ...

  3. SuperMap iObject入门开发系列之一组件式GIS开发平台介绍

    本文是一位好友“炀炀”授权给我来发表的,介绍都是他的研究成果,在此,非常感谢.平台介绍:SuperMap iObjects Java/.NET 是面向GIS应用系统开发者的组件式GIS开发平台,具有强 ...

  4. SuperMap开发入门2——环境部署

    由于超图的相关资源比较少,可参考官方提供的<SuperMap iDesktop 9D安装指南>和<SuperMap iObjects .NET 9D安装指南>完成应用软件和开发 ...

  5. SuperMap开发入门1——资源下载

    前言(废话) 由于项目需要,我们将被改用超图(SuperMap)平台进行GIS开发.记忆中,我还是在学生时代使用过超图软件5.0版本,安装包只有50M,这也是超图与学校有合作关系的缘故. 在以后的学习 ...

  6. SuperMap iObject入门开发系列七管线横断面分析

    本文是一位好友“托马斯”授权给我来发表的,介绍都是他的研究成果,在此,非常感谢. 管线横断面分析功能是管线系统常见的一个分析功能,地下管线横断面分析的原理,是根据需求,在管线区域画一条横截面线,使其与 ...

  7. SuperMap iObject入门开发系列之六管线区域查询

    本文是一位好友“托马斯”授权给我来发表的,介绍都是他的研究成果,在此,非常感谢. 管线区域查询功能针对单一管线图层进行区域多边形框选查询,然后将查询结果输出为列表,并添加定位和闪烁功能,效果如下图所示 ...

  8. SuperMap iObject入门开发系列之五管线属性查询

    本文是一位好友“托马斯”授权给我来发表的,介绍都是他的研究成果,在此,非常感谢. 管线属性查询功能针对单一管线图层进行特定的条件查询,然后将查询结果输出为列表,并添加点位闪烁功能,例如查询污水管线中, ...

  9. SuperMap iObject入门开发系列之四管线长度统计

    本文是一位好友“托马斯”授权给我来发表的,介绍都是他的研究成果,在此,非常感谢. 上一期文章主要写了管线系统的标注功能,结合代码简单讲解了一些超图.NET开发框架气泡Bubble的使用方法,这期的文章 ...

随机推荐

  1. Android应用开发相关下载资源(2015/08/27更新)

    Android应用开发相关下载资源   官方终于发布了Android Studio正式版,Android Studio将会成为推荐使用的主要Android开发工具.   (1)Android SDK ...

  2. 在busybox里使用ulimit命令

    刚才想使用ulimit修改用户进程的用户栈的大小,发现busybox里没有这个命令,上google搜索得到如下解释: "ulimit" is a shell builtin, me ...

  3. iPhone开发中从一个视图跳到另一个视图有三种方法:

    iPhone开发中从一个视图跳到另一个视图有三种方法:   1.self.view addSubView:view .self.window addSubView,需要注意的是,这个方法只是把页面加在 ...

  4. WordPress基础:设置后台语言

    菜单-设置-站点语言

  5. Linux学习20-nohup挂后台启动django

    前言 django在linux上运行,一般在xshell远程连接后,是通过python manage.py runserver 0.0.0.0:8000启动服务.但是这样有个弊端,窗口关闭服务就停止了 ...

  6. 使用WebRTC搭建前端视频聊天室

    在两个浏览器中,为聊天.游戏.或是文件传输等需求发送信息是十分复杂的.通常情况下,我们需要建立一台服务器来转发数据,当然规模比较大的情况下,会扩展成多个数据中心.这种情况下很容易出现很高的延迟,同时难 ...

  7. 女子监狱第四季/全集Orange Is the New Black迅雷下载

    女子监狱 第三季 Orange Is the New Black 3 (2015) 本季看点:该剧由<吉尔莫女孩>.<单身毒妈第一季>编剧杰姬·科恩的打造.由<护士当家& ...

  8. Pandas 快速入门(二)

    本文的例子需要一些特殊设置,具体可以参考 Pandas快速入门(一) 数据清理和转换 我们在进行数据处理时,拿到的数据可能不符合我们的要求.有很多种情况,包括部分数据缺失,一些数据的格式不正确,一些数 ...

  9. [转]Nginx+mysql+php-fpm负载均衡配置实例

    转 : http://www.jbxue.com/article/7923.html 介绍一个nginx.mysql.php-fpm环境下配置负载均衡的例子,有需要的朋友,可以参考下. 系统环境如下: ...

  10. [转]php-mobile-detect

    转自:http://www.oschina.net/p/php-mobile-detect php-mobile-detect (Mobile_Detect) 是一个 PHP 类,用来通过 User- ...