• cad.net 获取块编辑器的块名


    这个代码只能用于ACAD2010以上

        public static class BEdit
        {
            [CommandMethod("TestBEDIT")]
            public static void TestBEdit()
            { 
                Editor ed = Application.DocumentManager.MdiActiveDocument.Editor;
                if (Autodesk.AutoCAD.Internal.AcAeUtilities.IsInBlockEditor())
                {
                    ed.WriteMessage("
    块编辑器的块名是" + Autodesk.AutoCAD.Internal.AcAeUtilities.GetBlockName());
                }
                else
                {
                    ed.WriteMessage("
    没有名字");
                }
            }
        }

    c++  e大:

    cad是调用AcAuthEnviron.arx中的方法.在高版本中有getblockname,在2008只有一个btr.

    extern AcString acedGetBlockEditBlockName(void);

    没有试验过的想法,用于cad08及以下:

    我突然想到了,重写be命令,以及双击块激活be命令重定义到你的命令.
    然后be或双击的时候获取块名,再调出be命令,这样就可以预先获取块编辑器的块名了.

    如果发送be不能成功调用到块编辑器,那么也可以用win32 API拿这个框框的数据.

  • 相关阅读:
    java第五周作业
    ajax初探--实现简单实时验证
    Html+CSS二周目--->常用概念
    Html+CSS--->第一周初探
    Servlet细节整合
    多线程基础
    设计模式之单例模式(Singleton)
    配置文件Java读写
    Java基础之IO流
    JDBC基础
  • 原文地址:https://www.cnblogs.com/JJBox/p/13089805.html
Copyright © 2020-2023  润新知