打开新文档后不能操作 2楼有解决方法拉~
本帖最后由 作者 于 2010-7-30 14:34:32 编辑//用以下代码打开指定的dwg
acDocManager->appContextOpenDocument("F:\\test.dwg");
之后我测试,已经是新打开的文档名字了
MessageBox(NULL, TEXT(acDocManager->curDocument()->fileName()), "", 0);
可是为什么下面的的操作不能正常进行了呢?
......
// 获得当前数据库的块表
AcDbBlockTable *pBlkTbl;
acdbHostApplicationServices()->workingDatabase()->getBlockTable(pBlkTbl, AcDb::kForRead);
// 获得模型空间的块表记录
AcDbBlockTableRecord *pBlkTblRcd;
pBlkTbl->getAt(ACDB_MODEL_SPACE, pBlkTblRcd,AcDb::kForRead);
pBlkTbl->close();
// 创建块表记录遍历器
AcDbBlockTableRecordIterator *pItr; // 块表记录遍历器
pBlkTblRcd->newIterator(pItr);
AcDbEntity *pEnt; // 遍历的临时实体指针
for (pItr->start(); !pItr->done(); pItr->step())
{
//问题在这里。。。。。。。。。循环进不来。。。。就是说没有一个实体被发现。。。
//但是新打开的文件里面已经是有画好了的图的。。。。
}
......
for (pItr->start(); !pItr->done(); pItr->step())
{
//问题在这里。。。。。。。。。循环进不来。。。。就是说没有一个实体被发现。。。//但是新打开的文件里面已经是有画好了的图的。。。。
}
<p><font size="7"><font color="red"><strong>原来关键是要锁定文档啊<br/>加了下面这句就好拉~!</strong></font></font></p>
<p><font face="Verdana"><font face="Verdana">acDocManager->lockDocument(acDocManager->curDocument());</font></font></p>
<p><strong><font color="#ff0000" size="7"></font></strong> </p> <strong><font color="red">还有理论应将命令注册为ACRX_CMD_SESSION的<br/>可是我试验不这样也可以呢</font></strong>
页:
[1]