- 1、本文档共26页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ae控件编程2
* * 2 使用AE控件编程 2.3 TOCControl控件 2.3.1 TOCControl控件概述 该控件需要设置一个伙伴控件,并用伙伴控件来显示其地图、图层和符号体系内容的一个交互式树视图,显示内容保持与伙伴控件同步。 该控件的伙伴控件可以是MapControl、PageLayoutControl、ReadControl、SceneControl或GlobeControl。将别的控件设置为其伙伴控件的方法,可以用TOCControl控件的属性页设置,也可以通过编程设置。 编程设置需利用该控件的SetBuddyControl方法进行。 TOCControl控件以树形结构显示其伙伴控件的地图、图层及符号的内容表视图。TOCControl通过ITOCBuddy接口访问其伙伴控件。TOCControl管理图层的可见性和标签的编辑。该控件的主要接口包括: ITOCControl:IDispatch ITOCControlEvents:IDispatch ?ITOCControl ITOCControl接口是任何与TOCControl有关任务的出发点,包括设置控件的外观、管理图层的可见性和标签的编辑。 2 使用AE控件编程 1 ArcObjects的组件库 ICOCControl接口成员,定义接口变量的方法: ITOCControl pTOCControl; pTOCControl =axTOCControl1 as ITOCControl; pTOCControl=axTOCControl1.GetOcx() as ITOCControl; ?ITOCControlEvents 该接口是一个事件接口,定义了TOCControl能够处理的全部事件。 如OnBeginLabelEdit、OnEndLabelEdit分别为TOCCtrontrol中的标签开始编辑和结束编辑时触发的事件 2 使用AE控件编程 这两个事件参数e都有一个名为canEdit的成员参数,将该参数设置为true或false,便可控制标签是否可以编辑。 下面通过程序说明: private void axTOCControl1_OnBeginLabelEdit(object sender, ESRI.ArcGIS.Controls.ITOCControlEvents_OnBeginLabelEditEvent e) { IBasicMap map = null; ILayer layer = null; object other = null; object index = null; esriTOCControlItem item = esriTOCControlItem.esriTOCControlItemNone; //确定何种类型的item被选中 m_TCOControl = axTOCControl1.Object as ITOCControl; m_TCOControl.HitTest(e.x, e.y, ref item, ref map, ref layer, ref other, ref index); //仅仅图层才能编辑标签 if (item != esriTOCControlItem.esriTOCControlItemLayer) { e.canEdit = false; } } //控制图层标签是否可以编辑 private void axTOCControl1_OnEndLabelEdit(object sender, ITOCControlEvents_OnEndLabelEditEvent e) { if (e.newLabel.Trim() == ) { e.canEdit = false; } } 2 使用AE控件编程 ?调整TOCControl中图层的显示顺序 在此将通过实例说明如何利用鼠标左键通过拖放方式调整TOCControl中图层的显示顺序。需要用到OnMouseDown,OnMouseUp两个事件,和HitTest()和Update()方法。 基本思路如下: 2 使用AE控件编
您可能关注的文档
- 2017年版医疗风险与安全管理.ppt
- 2017年第一轮中考复习近代史第三单元 新民主主义革命兴起.ppt
- 2017年高三(理)数学一轮复习 第12篇 第2节 直线与圆位置关系课件.ppt
- 2017年高考一轮复习哲学生活:第七课《唯物辩证联系观》(2016-2015年高考真题).ppt
- 2017年高三一轮复习经济生活第七课.ppt
- 2017年高考一轮复习-必修二-第11课经济建设发展和曲折.ppt
- 2017年第一轮中考复习近代史第五单元人民战争 胜利.ppt
- 2017年高考四川专用一轮复习 第4章基础课时8 曲线运动 运动合成与分解..ppt
- 2017年高考历史知识专题2 古代中国经济基本结构和特点.ppt
- 2017年高考四川专用一轮复习 第6章基础课时18 电容器 带电粒子在电场中运动..ppt
文档评论(0)