明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: bai_cai101

如何自动新建一个DWG并置为当前!

  [复制链接]
发表于 2008-11-28 16:11:00 | 显示全部楼层

AcDbDatabase* CUlity::NewDocDatabase()
{
 AcDbDatabase* pNewDb=NULL;
 static char pData[] ="acad.dwt";
 //acDocManager->executeInApplicationContext(CreateDoc, (void *)pData);
 //acDocManager->newDocument();
 if(acDocManager->isApplicationContext())
 {
  acDocManager->appContextNewDocument((const char *)pData);
 }
 else
  acutPrintf("\nERROR To Create Doc!\n");

 pNewDb=GetLastDoc()->database();
 if(!pNewDb) return NULL;
 
 return pNewDb;
}


AcApDocument* CUlity::GetLastDoc()
{
 AcApDocument* documentArray[10];

 AcApDocument* pDoc;
 AcApDocumentIterator* pDocIter;
 int nDocs = 0;;

 pDocIter = acDocManager->newAcApDocumentIterator();

 for ( ; !pDocIter->done(); pDocIter->step(), nDocs++) {
  pDoc = pDocIter->document();
  documentArray[nDocs] = pDoc;
  acutPrintf("%d.  %s\n", nDocs + 1, pDoc->fileName());
 }
 delete pDocIter;

 if (nDocs>0) {
  return documentArray[nDocs - 1];
 } else {
  return NULL;
 }
}

这样获取的Database就对了,

发表于 2010-7-16 17:02:00 | 显示全部楼层

老的帖子也能解决问题   顶一下 支持了!

谢谢楼主及各位大侠!

发表于 2015-6-11 00:54:46 | 显示全部楼层
发表于 2015-6-26 21:33:50 | 显示全部楼层
这个帖子真好啊!十年前的帖子刚好解决问题
 楼主| 发表于 2018-8-25 18:54:20 | 显示全部楼层
放弃了十三年后的今天,又碰到了这个问题。。。
发表于 2019-11-25 23:25:19 | 显示全部楼层
问题解决了没有,已经有人给出了答案。
http://bbs.mjtd.com/thread-79380-1-1.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 04:38 , Processed in 0.157624 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表