文章列表:GIS笔记

VC++开发GIS系统(105)打开工程之导出对话框
前文已经实现了文件的新建,显示和隐藏,激活,移除和查看属性,还有文件的载入。今天介绍的打开工程对话框的导出。 函数定义 在_malaDialogs.h中定义下面的函数。 /* * 打开工程对话框...

VC++开发GIS系统(104)载入文件之功能实现
前文《VC++开发GIS系统(103)载入文件之对话框的导出》已经导出了载入文件的交互对话框,下面的工作就是要实现载入文件的详细功能了。步骤如下: 1. 响应载入文件菜单 参考文章《VC++开发...

VC++开发GIS系统(103)载入文件之对话框的导出
前文已经实现了文件的新建,显示和隐藏,激活,移除和查看属性。接下来的工作就是打开一个已经存在的文件,并加入到当前的目录树中。今天介绍的载入文件对话框的导出。 函数定义 在_malaDialogs...

VC++开发GIS系统(102)查看文件属性
在文章《VC++开发GIS系统(101)补充知识VC++获取文件信息(大小、时间)》中大体介绍了VC++中获取文件属性的简单方法,下面的工作就是响应文件右击的属性菜单,实现查看文件属性的功能。 ...

VC++开发GIS系统(101)补充知识VC++获取文件信息(大小、时间)
在VC++中有时候需要获取文件的一些基本信息,如名称、大小、创建时间等等,有很多方法可以完成这个工作,我记录一种我认为是最简单的方法。 示例代码 CFile file; CFileStatus ...

VC++开发GIS系统(100)移除文件
之前进行了文件的显示、隐藏,文件的激活代码实现,现在想要进行文件的移除。步骤如下: 响应移除函数 方法见文章《VC++开发GIS系统(71)响应CTreeCtrl右键菜单的函数》 移除函数实现 ...

VC++开发GIS系统(99)补充知识vector删除元素
在我们之前的系统开发中用到了vector,大多都是添加遍历之类的工作,在vector中删除元素是比较容易出错的一个工作。本文做一个记录。 示例删除方法 vector< malaTree&g...

VC++开发GIS系统(98)补充知识MFC弹出确认对话框
之前进行了文件的显示、隐藏,文件的激活代码实现,现在想要进行文件的移除。在系统中文件的移除是一项比较危险的操作,所以这里要进行一次确认,弹出一个确认对话框。 又见MessageBox 使用Mes...

VC++开发GIS系统(97)补充知识获取MFC中各种类的指针(转)
在使用MFC开发中会用到获取各种类指针,比如VC++开发GIS系统(89)View中获取目录树、VC++开发GIS系统(94)窗口的重绘(四)、VC++开发GIS系统(54)Ribbon状态栏实...

VC++开发GIS系统(96)清除当前的操作及状态
今天发现了系统的一个bug,在进行输入点操作的时候,新激活一个点文件,然后继续输入点。这时候会发现新输入的点还是之前的激活的点文件中,新激活的点文件并没有数据存入。如图: 原因分析 在激活点文...

VC++开发GIS系统(95)显示当前的操作状态
前文《VC++开发GIS系统(90)画点(最终版)》并且实现了图形的重绘,这里考虑到一个问题,后面的工作我们也会画线、画面之类。如果我们最小化了窗口,怎么知道当前是在进行什么操作呢?所以我在工程...

VC++开发GIS系统(94)窗口的重绘(四)
前面写过3篇文章介绍了窗口的重绘,但是这仅仅是有View这个层面的。还有一个问题不知道大家有没考虑过,就是左侧面板的文件状态改变的时候,窗口也应该重绘。比如,我显示了文件,应该显示文件内容;我隐...

VC++开发GIS系统(93)窗口的重绘(三)
前文《VC++开发GIS系统(92)窗口的重绘(二)》介绍到了使用malaLogic、malaRect来判断是否在显示屏幕范围内,下面进行具体的解释。 外包矩形结构体malaRect 在mala...

VC++开发GIS系统(92)窗口的重绘(二)
前文《VC++开发GIS系统(91)窗口的重绘(一)》中介绍到了一个getAllPoint函数,用来获取所有应该显示的图形。本文做一个具体介绍。 函数定义 在_malaIO.h的CPointIO...

VC++开发GIS系统(91)窗口的重绘(一)
前文《VC++开发GIS系统(90)画点(最终版)》已经可以正式实现画点了,也就是说画的点已经可以在界面显示,并且保存下来。但是有这么一个问题:当最大化或者最小化窗口的时候,之前画的点就不见了。...