Helios 发表于 2009-2-6 10:55:22

使用ARX创建MTEXT

大家好,
我希望ARX创建的多行文字只是复制/粘贴我的AddText方法的问题。(人生能有多难?)
嗯,似乎还有更多。
有人能调整我下面的代码,让它创建一个多行文字吗?蒂亚,太阳神。
Acad::ErrorStatus CadDrawing::AddMText(const AcGePoint3d &p1, const TCHAR *textString,double width)
{
   Acad::ErrorStatus es = Acad::ErrorStatus::eNullHandle;
   
   if(NULL != m_pCurDb)
   {
   
   AcDbObjectPointer mtext;
   
   if ((es = mtext.create()) != Acad::eOk)
   {
       LogString(L"Failed to create text\n");
       return es;
   }
   
   if ((es = mtext->setLocation(p1)) != Acad::eOk)
   {
       LogString(L"Failed to set Mtext position point\n");
       return es;
   }
   
   mtext->setContents(textString)) // appendAcDbEntity(mtext)) != Acad::eOk)
   {
       LogString(L"Failed to append mtext to block (%s)\n", LPCTSTR(m_CurSpaceName));
       return es;
   }
   }
   
   return es;
}
由Daniel编辑:添加了代码标签
**** Hidden Message *****

Helios 发表于 2009-2-6 12:13:58

这似乎行得通代码1]

Helios 发表于 2009-2-6 12:18:44

谢谢丹尼尔,
你的代码确认我在正确的轨道上。
setDatabaseDefaults() 为我做了什么?
实际上,集合内容返回 0.事物已恢复正常运行。
在外滩玩得开心。
赫利俄斯。

Helios 发表于 2009-2-8 06:02:04


据说它将所有属性设置为数据库默认值..图层,绘图样式等。
是的,setContents() 在成功时返回 0。
嘿!谢谢,我们有我们的房地产家伙在外滩河的另一边寻找公寓,应该很有趣。
页: [1]
查看完整版本: 使用ARX创建MTEXT