cad.net 更改高版本填充交互方式为低版本样子

缺省类请参考 cad.net 操作cui和cuix含工具条

/// <summary>
/// 修改cui,双击填充
/// </summary>
public static void RegeditDoubleClickEvent()
{
    try
    {
        //检索CUI文件的位置,然后打开它
        var cs = JoinBox.Menu.Cui.CuiMain(out string expand);//Cui类在本博客参考链接上     
        DoubleClickAction blockDoubleClickAction = null;
        foreach (DoubleClickAction dca in cs.MenuGroup.DoubleClickActions)//要加入accui.dll 浩辰没有
        {
            //英文版CAD使用英文名称,具体对象名称可在CAD自定义面板内查询
            if (dca.Name.Equals("图案填充"))
            {
                blockDoubleClickAction = dca;
                break;
            }
        }
        if (blockDoubleClickAction != null)
        {
            //更改双击宏以调用我们的命令 
            var ma = blockDoubleClickAction.DoubleClickCmd.MenuMacroReference.macro;
            const string str = "编辑图案填充";
            if (!ma.Name.Contains(str))
            {
                #if !AC2008
                    ma.CLICommand = "HATCHEDIT";
                #endif
                    ma.Command = "^C^C_hatchedit";
                ma.Name = str;
                ma.HelpString = "修改现有的图案填充对象:   HATCHEDIT";

                // 保存我们的更改
                if (cs.IsModified)
                {
                    cs.Save();
                }
            }
        }
    }
    catch (System.Exception e)
    {
        throw e;
    }
}

修改完这个之后,要修改cad系统变量:

HPDLGMODE,1;高版本填充直接弹出面板

(完)

posted @ 2019-04-02 01:35  惊惊  阅读(1044)  评论(0编辑  收藏  举报