whyangdong 发表于 2003-11-27 11:20:00

错在那里? 为什么不能必变字体大小

AcDbBlockTable *pBlockTable;
        acdbHostApplicationServices()->workingDatabase()->getSymbolTable(pBlockTable,AcDb::kForRead);
        AcDbBlockTableRecord *pBlockTableRecord;
        pBlockTable->getAt(ACDB_MODEL_SPACE,pBlockTableRecord,AcDb::kForRead);
    pBlockTable->close();
        AcDbBlockTableRecordIterator *pBlockIterator;
        pBlockTableRecord->newIterator(pBlockIterator);
   for(pBlockIterator->start();!pBlockIterator->done();pBlockIterator->step())
{
        AcDbEntity *pEntity;
        pBlockIterator->getEntity(pEntity,AcDb::kForWrite);       
        const char *pCname1=pEntity->isA()->name();
               if(strcmp(pCname1,"AcDbText")==0)
        {
        AcDbText *pText;
               acdbOpenObject(pText,pEntity->objectId(),AcDb::kForWrite);
               pText->setHeight(12);
               pText->setWidthFactor(0.77);
                  pText->close();                   
       }      
        pEntity->close();
        }
                delete pBlockIterator;
        pBlockTableRecord->close();

goldenshin 发表于 2003-11-27 12:01:00

acdbOpenObject(pText,pEntity->objectId(),AcDb::kForWrite);
不用再打开了,指针转换就可以了,(关闭也不用关两次了)

whyangdong 发表于 2003-11-27 23:06:00

谢谢指点
但我在取直线的时候为什么能这样用而不报错呢?

还想问一下如何指针转换是这样吗
pText=pEntity
页: [1]
查看完整版本: 错在那里? 为什么不能必变字体大小