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]
查看完整版本: 错在那里? 为什么不能必变字体大小