- UID
- 306377
- 积分
- 0
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2005-8-10
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2005-9-22 15:45:34
|
显示全部楼层
多谢指教,您说的是:::
其实问题我已解决,来这里总结一下:
AcDbLayerTable *pLayerTbl;
acdbHostApplicationServices()->workingDatabase()
->getSymbolTable(pLayerTbl, AcDb::kForWrite);
//获得当前层表以便写入
acutPrintf("\n%s:",LayerName);
acutPrintf("图层已经存在!");
//第一种
AcDbLayerTableRecord *pLayerTblRcd;
int re = pLayerTbl->getAt(LayerName, pLayerTblRcd, AcDb::kForWrite);
//acutPrintf("\n re的值是%d:",re);
AcDbObjectId layerId=pLayerTblRcd->objectId();
//acutPrintf("\n layerId的值是%d:",layerId);
pLayerTblRcd->close();
pLayerTbl->close();
acdbHostApplicationServices()->workingDatabase()->setClayer(layerId);
//楼上的方法
acdbCurDwg()->getLayerTable(pLayerTbl, AcDb::kForRead);
AcDbObjectId layerId;
pLayerTbl->getAt("LayerName", layerId);
pLayerTbl->close();
acdbHostApplicationServices()->workingDatabase()->setClayer(layerId); |
|