歪兔工具條(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);
        }
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM