zoukankan      html  css  js  c++  java
  • 歪兔工具条(YToolsforArcMap)简介之ArcGIS插件中通过菜单调用打开Toolbox工具

    俗话说的好:“an image is better than tons of words.” 先上个图。

    1.套路

    很明显,这是一个插件,这个插件是通过“Extending ArcObjec”的方式开发的,相关信息可以扒本博。

    通过menu按钮呼出了toolbox的工具窗口。

    细看一下,它是由两级菜单实现的,第一级是工具类名,第二级是具体的工具按钮。

    具体的呢:

    ①点击一级菜单ToolMenu展开二级菜单RasterToolMenu的按钮;

    ②二级菜单点击下去是执行了对应的Command。

    2.Command里的实现

    ①从模板创建一个Command,把一同生成的bmp图标删掉,相关加载代码也在该类中删掉,因为这个图没啥用。

     

    ②使该类实现IToolCommand接口,以调用扩展方法。

    ③对相关属性进行赋值。

    ④在OnClick方法中调用扩展方法,传入tool工具的名字进行调用。

    需要注意的是tool工具名指的是如图的Name。

    ⑤IToolCommand接口及扩展方法代码如下

    namespace YToolsForArcMap.Command.Tool
    {
        internal interface IToolCommand
        {
        }
        internal static class Extend
        {
            public static void ShowToolCommandWindow<T>(this T t, string toolName) where T:IToolCommand
            {
                string dllFolderPath =Utils.Path.GetPath.GetThisDllFolderPath();

    //打开tool窗口主要代码就是下面3行。
                IGPToolCommandHelper gPToolCommandHelper = new GPToolCommandHelperClass();
                gPToolCommandHelper.SetToolByName($"{dllFolderPath}/Tools/YToolsforArcMap.tbx",toolName);
                gPToolCommandHelper.Invoke(null);
            }
        }
    }

  • 相关阅读:
    SQL SERVER XML 学习总结
    Azkaban2官方配置文档
    I.MX6 Android CAN 命令行测试
    nginx 静态网站配置
    nginx php 配置
    uwsgi 配置 初试
    django 初试
    Ubuntu Nginx uwsgi django 初试
    I.MX6 天嵌 E9 U-boot menu hacking
    Ubuntu 搭建 LAMP 服务器
  • 原文地址:https://www.cnblogs.com/yzhyingcool/p/12320604.html
Copyright © 2011-2022 走看看