| 符号表 符号表记录和字典中使用的名称必须遵循以下规则: 
 AutoCAD 数据库包含以下符号表(括号表示类名和用于添加条目的 AutoCAD 命令): 
 每个表都包含 的相应子类的对象。AcDbSymbolTableRecord 每个符号表类都提供一个函数,用于查找按名称指定的记录。函数重载形式的签名如下所示。( 代表九种符号表类类型中的任何一种。getAt()getAt()##BASE_NAME## Acad::ErrorStatus 
AcDb##BASE_NAME##Table::getAt(const char* pEntryName,
                    AcDb##BASE_NAME##TableRecord*& pRecord,
                    AcDb::OpenMode mode,
                    bool openErasedRecord = false) const;或 Acad::ErrorStatus 
AcDb##BASE_NAME##Table::getAt(const char* pEntryName,
                    AcDbObjectId& recordId,
                    bool getErasedRecord = false) const;此函数的第一个版本返回指向打开的记录的指针,如果找到匹配的记录并且打开操作(使用指定的模式)成功。如果为 true,则该函数返回对象,即使该对象已被擦除。如果为 false,则该函数返回指针和 for erased 对象的错误状态。pRecordopenErasedRecordopenErasedRecordNULLeWasErased 如果找到匹配的记录,则该函数的第二个版本返回值中按名称指定的记录。如果为 true,则该函数返回匹配的对象,即使该对象已被擦除。对象未打开。getAt()AcDbObjectIdrecordIdgetErasedRecord 获取记录并打开后,您可以获取和设置不同的成员值。有关类成员函数的完整列表的特定符号表记录类,请参阅 ObjectARX 参考。 所有符号表类提供的其他重要函数是 和 函数。请参阅创建和修改图层表记录中的示例。该函数的签名是has()add()has() bool AcDb##BASE_NAME##Table::has(const char* pName) const; bool AcDb##BASE_NAME##Table::has(AcDbObjectId id) const; 如果表包含名称与 或 匹配的记录,则该函数返回 true。has()pNameid 该函数具有以下签名:add() Acad::ErrorStatus 
AcDb##BASE_NAME##Table::add(AcDb##BASE_NAME##TableRecord*
                                pRecord);
 
Acad::ErrorStatus
AcDb##BASE_NAME##Table::add(AcDbObjectId& recordId,
                            AcDb##BASE_NAME##TableRecord* pRecord);此函数将指向的记录添加到包含表的数据库和表本身。如果添加成功且参数为 non-,则将其设置为数据库中的记录。pRecordrecordIdNULLAcDbObjectId 父主题: | 
 |Archiver|CAD开发者社区
( 苏ICP备2022047690号-1   苏公网安备32011402011833)
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1   苏公网安备32011402011833)
GMT+8, 2025-10-31 14:05
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.