zoukankan      html  css  js  c++  java
  • 利用 IIdentifyDialog 模拟ArcMap工具里面 Identify功能进行要素查询

    
    [转载]利用 IIdentifyDialog 模拟ArcMap工具里面 Identify功能进行要素查询 (2010-10-09 22:02:49)
    标签: 杂谈 分类: 学习
    利用 IIdentifyDialog 模拟ArcMap工具里面 Identify功能进行要素查询
    利用AE提供的IIdentifyDialog,创建class identifyTool 。然后在程序里面就可以在鼠标点击按钮功能下,模拟实现ArcMap工具里面 Identify功能。
    类生成代码如下:

    1 public sealed class identifyTool : BaseTool
    2 {
    3 IHookHelper pHookHelper = new HookHelperClass();
    4 public identifyTool()
    5 {
    6 m_cursor = new System.Windows.Forms.Cursor(@"..\..\Resources\Identify_md.cur");
    7
    8 }
    9
    10 public override void OnCreate(object hook)
    11 {
    12 pHookHelper.Hook = hook;
    13 }
    14 public override void OnMouseDown(int Button, int Shift, int X, int Y)
    15 {
    16
    17 IActiveView pActiveView;
    18 IIdentifyDialog pIdentifyDialog;
    19 IIdentifyDialogProps pIdentifyDialogProps;
    20 IEnumLayer pEnumLayer;
    21 ILayer pLayer;
    22
    23 pActiveView = pHookHelper.ActiveView;
    24
    25 pIdentifyDialog = new IdentifyDialogClass();
    26 pIdentifyDialogProps = pIdentifyDialog as IIdentifyDialogProps;
    27 pIdentifyDialog.Map = pHookHelper.ActiveView.FocusMap;
    28 pIdentifyDialog.Display = pActiveView.ScreenDisplay;
    29
    30 pIdentifyDialog.ClearLayers();
    31
    32 pEnumLayer = pIdentifyDialogProps.Layers;
    33 pEnumLayer.Reset();
    34 pLayer = pEnumLayer.Next();
    35 while (pLayer != null)
    36 {
    37 pIdentifyDialog.AddLayerIdentifyPoint(pLayer, X, Y);
    38 pLayer = pEnumLayer.Next();
    39 }
    40 pIdentifyDialog.Show();
    41 }
    42 }
    其中m_cursor用来设置鼠标样式。
    IIdentifyDialog要设置其Map和Display属性。
    (参考ESRI中国社区)
  • 相关阅读:
    【BZOJ 2844】: albus就是要第一个出场
    BZOJ 2631: tree
    BZOJ1798: [Ahoi2009]Seq 维护序列seq
    Link-Cut Tree指针模板
    bzoj 4916: 神犇和蒟蒻 (杜教筛+莫比乌斯反演)
    【BZOJ 3561】 DZY Loves Math VI
    linux 安装php7.2 以及配置laravel环境(public目录下)
    composer 配置 切换中国镜像
    phpstorm composer 提示php 版本过低的问题调整
    如何在阿里云的虚机 部署laravel项目
  • 原文地址:https://www.cnblogs.com/beeone/p/2097991.html
Copyright © 2011-2022 走看看