mapx之vc自定义测距工具(PolyToolUsed事件)

2016-02-19 12:56 40 1 收藏

get新技能是需要付出行动的,即使看得再多也还是要动手试一试。今天图老师小编跟大家分享的是mapx之vc自定义测距工具(PolyToolUsed事件),一起来学习了解下吧!

【 tulaoshi.com - 编程语言 】

:mapx之vc自定义测距工具(PolyToolUsed事件)
:VC6+mapx4.5+win2000
: www.51gis.com

//1.定义常量
#define MYTOOL_DISTANCE 100 //1~999

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

//2.创建工具
m_ctrlMap.CreateCustomTool(MYTOOL_DISTANCE,miToolTypePoly,miCrossCursor);

//3.响应事件
void CMapXSampleView::OnPolyToolUsedMap(short ToolNum, long Flags, LPDISPATCH Points,
BOOL bShift,BOOL bCtrl,BOOL FAR* EnableDefault)
{
//计算距离
if(Flags==miPolyToolInProgress) {//这句可有可无
if(ToolNum==MYTOOL_DISTANCE)
{
CMapXPoints pts;
long n;
long i;
try{
pts.AttachDispatch (Points, FALSE); // Get points Object
double dDistanceTot=0.0;
n=pts.GetCount ();
for (i=1; in;i++)
{
CMapXPoint pt1=pts.Item(i);
CMapXPoint pt2=pts.Item(i+1);
double d=m_ctrlMapX.Distance (pt1.GetX(),pt1.GetY(),pt2.GetX (),
pt2.GetY ());
dDistanceTot+=d;
}
CString str;
str.Format ("总距离为:%f",dDistanceTot);
//在状态栏输出距离
((CMainFrame*)AfxGetMainWnd())-m_wndStatusBar.SetPaneText(0,str);
}
catch (COleDispatchException *e){
e-ReportError ();
e-Delete ();
}
catch (COleException *e){
e-ReportError ();
e-Delete ();
}
}
}//if(Flags==miPolyToolInProgress)
}

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

//4.调用工具
void CMapXSampleView::OnMapToolDistancetool()
{
m_ctrlMapX.SetCurrentTool(MYTOOL_DISTANCE); //

}

来源:https://www.tulaoshi.com/n/20160219/1602518.html

延伸阅读
PowerPoint借助自定义形状实现填充自定义图片   具体如何操作呢?以powerpoint2007为例,先在PPT页面中画一Tulaoshi.Com个形状,就像下面这个圆: 然后在形状填充里面选择图片或纹理填充: 插入自文件,选择想要的图片就OK了,就会出现下面的效果: 同样的效果还可以应用于艺术字(文本框不行)。如下: ...
标签: Web开发
一、基本概念: 1.标签(Tag): 标签是一种XML元素,通过标签可以使JSP网页变得简洁并且易于维护,还可以方便地实现同一个JSP文件支持多种语言版本。由于标签是XML元素,所以它的名称和属性都是大小写敏感的 2.标签库(Tag library): 由一系列功能相似、逻辑上互相联系的标签构成的集合称为标签库。 3.标签库描述文件(Tag Library Desc...
标签: 浏览器
IE9自定义配置工具使用教程 TweakIE9只有1.71MB,并非完全是绿色安装设计,双击后还是会出现一个简单的安装选项。这之中安装包会自动检查电脑上已装有的IE版本,确认是IE9后才会继续。 安装完成以后,打开界面上有五个基本定制功能: UI(用户界面)定制;启动(IE9启动)定制;下载功能定制(包括EXE文件签名检查);安全功能定制;IE9开...
标签: 电脑入门
应用工具栏是我们经常会使用到的,这里也是显示我们个性的一个重要地方,那么该如何设置出具有个性的应用工具栏呢?现在图老师小编就教你一个解决的方法吧。 设置方法: 只需要在工具栏上打开定制的菜单上按一下滑鼠右键(如果你有一个按钮,鼠标可以控制+滑鼠左键),然后选择自定义 当您这样做,您会看到一个对话框, 您可以添加ro...
按钮交互是Authorware中常用的交互响应类型,但是仅使用系统提供的按钮未免有点单调。我们可以在Authorware中制作自己的图像按钮。 自定义按钮 本例简介:普通的按钮,在Authorware中一般有四个状态:正常、鼠标移过、鼠标按下和不可使用。 在Authorware中制作自己的图形按钮,就要事先准备好这四种状态的图片,当然也可以只准备一张图...

经验教程

768

收藏

12
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部