zoukankan      html  css  js  c++  java
  • 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拿这个框框的数据.

  • 相关阅读:
    RabbitMq+Haproxy负载均衡
    RabbitMq常用命令
    几种常见的消息队列
    RabbitMq集群搭建
    a=a+b与a+=b的区别
    Redis集群搭建
    变量作用域
    8.3吝啬SAT问题
    Surrounded Regions
    Binary Tree Maximum Path Sum
  • 原文地址:https://www.cnblogs.com/JJBox/p/13089805.html
Copyright © 2011-2022 走看看