首页 > 解决方案 > Solidworks API AddMenuItem

问题描述

我正在尝试为 SOLIDWORKS 编写插件并熟悉 API。我首先添加了一个菜单项

public bool ConnectToSW(object ThisSW, int Cookie)
{
    this.ThisSW = ThisSW as ISldWorks;
    this.Cookie = Cookie;

    this.ThisSW.SetAddinCallbackInfo2(0, this, this.Cookie);

    SwEventPtr = (SldWorks)this.ThisSW;

    this.ThisSW.AddMenuItem5((int)swDocumentTypes_e.swDocPART, this.Cookie, "Item@&File", 0, null, null, "My Menu Item", null);

    return true;
}

我已经成功注册了包含上述代码段的程序。 已注册的加载项列表

但是,当我打开File菜单时,没有Item项。我究竟做错了什么? 文件中没有项目

标签: c#solidworks

解决方案


AddMenuItem5() 函数对我也不起作用(可能是一个错误)。您可以使用旧版本,例如 AddMenuItem3()

请注意,菜单项仅在打开零件文档时可见。要使其在其他文档类型中可见,请相应地更改第一个参数。使用 swDocNone 始终显示菜单项。

this.ThisSW.AddMenuItem3((int)swDocumentTypes_e.swDocPART, this.Cookie, "Item@&File", -1, "MyMenuCallback", "MyMenuEnableMethod", "My menu item", "");

推荐阅读