说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

菜鸟正在学习BCB5控制CAD,问题颇多,苦于缺乏资料,请大虾指点明径

编辑:说三道四文库 发布时间:2017-02-23 02:22
HTML文档下载 WORD文档下载 PDF文档下载
代码如下:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
Variant cad,obj1,obj2,obj3;
Variant pt1,pt2,pt3,pt4;
double tmp;
pt1=VarArrayCreate(OPENARRAY(int,(0,2)),varDouble);
tmp=150.0;
pt1.PutElement(&tmp,0);
 tmp=150.0;
pt1.PutElement(&tmp,1);
tmp=0.0;
pt1.PutElement(&tmp,2);
 pt2=pt1;
 tmp=150.0-30.0;
  pt2.PutElement(&tmp,0);
tmp=150.0-15.0;
pt2.PutElement(&tmp,1);
   pt3=pt2;
   tmp=150.0+30.0;
  pt3.PutElement(&tmp,0);
     pt4=pt1;


  tmp=150.0-20.0;
   pt4.PutElement(&tmp,1);

    cad=GetActiveOleObject("AutoCAD.Application");
    obj1=cad.OleFunction("ActiveDocument");
    obj2=obj1.OleFunction("ModelSpace");
    obj2.OleProcedure("AddBox",VarArrayRef(pt1),60.0,30.0,15.0);
    obj3=obj2.OleFunction("AddDimAligned",VarArrayRef(pt2),VarArrayRef(pt3),VarArrayRef(pt4));
      obj3.OlePropertySet("Color",3);


}

整个代码编译没问题,运行中出现:
   vt == rhs.vt @ VARIANT.CPP/421
  Press [Y]es to termianate,[N]o to continue and [C]ancel to Debug
按下“否”三次时,CAD中可以看到完整结果,按下“是”后进入VARIANT.CPP文件,如何解决此问题
另:如何更改标注中字体高度(CAD帮助中提到TextString有\H方法改动字体高度,没有成功)
呵呵,你的问题在于不要使用VarArrayRef,
改成
    cad=GetActiveOleObject("AutoCAD.Application");
    obj1=cad.OleFunction("ActiveDocument");
    obj2=obj1.OleFunction("ModelSpace");
    obj2.OleProcedure("AddBox",pt1,60.0,30.0,15.0);
    obj3=obj2.OleFunction("AddDimAligned",pt2,pt3,pt4);
    obj3.OlePropertySet("Color",3);

标注字高,我查查看..
可不可以多加点分...:)
给100分吧。
你用R14吧。
字高修改方法如下:


void __fastcall TForm1::Button1Click(TObject *Sender)
{
//OLE命令缩写
#define  PG  OlePropertyGet
#define  PS  OlePropertySet
#define  FN  OleFunction
#define  PR  OleProcedure

Variant CadApp,ThisDrawing,ModelSpace,TextStyle,DimObj;
Variant pt1,pt2,pt3,pt4;

double tmp;
pt1=VarArrayCreate(OPENARRAY(int,(0,2)),varDouble);
pt2=VarArrayCreate(OPENARRAY(int,(0,2)),varDouble);
pt3=VarArrayCreate(OPENARRAY(int,(0,2)),varDouble);
pt4=VarArrayCreate(OPENARRAY(int,(0,2)),varDouble);


tmp=150.0;
pt1.PutElement(&tmp,0);
tmp=150.0;
pt1.PutElement(&tmp,1);
tmp=0.0;
pt1.PutElement(&tmp,2);

tmp=150.0-30.0;
pt2.PutElement(&tmp,0);
tmp=150.0-15.0;
pt2.PutElement(&tmp,1);
tmp=0.0;
pt2.PutElement(&tmp,2);


tmp=150.0+30.0;
pt3.PutElement(&tmp,0);
tmp=150.0-15.0;
pt3.PutElement(&tmp,1);
tmp=0.0;
pt3.PutElement(&tmp,2);

tmp=150.0+30.0;
pt4.PutElement(&tmp,0);
tmp=150.0-20.0;
pt4.PutElement(&tmp,1);
tmp=150.0-15.0;
pt4.PutElement(&tmp,2);



    CadApp=GetActiveOleObject("AutoCAD.Application");
    ThisDrawing=CadApp.PG("ActiveDocument");
    ModelSpace=ThisDrawing.PG("ModelSpace");



    ModelSpace.PR("AddBox",pt1,60.0,30.0,15.0);

    TextStyle=ThisDrawing.PG("ActiveTextStyle");
    TextStyle.PS("FontFile","Romans.shx");
    TextStyle.PS("Height",3);

    DimObj=ModelSpace.FN("AddDimAligned",pt2,pt3,pt4);
    DimObj.PS("Color",3);
    
    ThisDrawing.PG("ActiveViewport").PR("ZoomExtents");

}
cker(有空就玩票...甭活得忒累...)你真是高人,请问你有此类有关资料吗?
请给我一些资料,免得我三天两头提问,又要麻烦您老人家,
只要拿到有用资料,
100分-----------没问题!!!!!!!!!!!!!!!!!
(最好能告诉您的学习经验及方法)
厉害呀
高手?。。。。

CKER摔倒在键盘上 。。。。
资料就在CAD14的VBA帮助里面呀。
打开cad的帮助,什么都有。可惜都是关于VB的。
但动动脑子,问题都是可以解决的。:-)
好像您的问题,我也是打开14的帮助,然后在
AutoCAD的Automation Reference里面狂看了一通。
就找到解决之道了。

当然CKER是单位的首席CAD绘图高手。
又懂一点点BCB.....
我真的没有任何书籍在手.
CKER能不能告诉我你在那里工作
http://www.csdn.net/author/cker/
使用VB获得一页的HTML代码 使用VB收发电子邮件 VB使用超链接和发送Email VB使用浏览器的文件复制对话框 输入/输出篇 -VB资料 通过WnetEnumResource函数获得网络资源 -VB资料 通往 Internet 的捷径-VB资料 显示计算机的名称 -VB资料 VB用 MAPI 控件实现发送邮件 VB用 WinSock 控件下载文件 VB用 Winsock 实现聊天的程序 VB用Internet Transfer编写FTP程序 VB用Sockets发送电子邮件 用VB 创建自己的通信程序 用VB5.0开发通信软件的技巧 用VB5开发IE 用VB编写网络寻呼 用VB编写小型的网络系统 用VB创建自己的通信程序 用VB构建Internet的应用 用VB开发标准CGI程序 用VB实现客户——服务器(TCP/IP)编程实例 用VB实现聊天讨论室和点对点会话 用VB写一个定时PING某IP的程序 用VB制作浏览器 用Visual Basic 5.0设计E-mail程序(MAPI) 用Visual Basic6.0编写客户服务器程序 用Visual Basic创建FTP组件 用Visual Basic开发数据库浏览器 用Visual Basic轻松地设计Browser及Ftp程序 VB用Winsock控件发信Email 怎样把数据库中的两个字符串转化为数值型然后再求他们的和,然后显示他们的和 谁听说过“IP助手函数”没有??? 请各位大虾帮我看看这两行代码,看看要怎么做才行?谢谢。 请教各位大师一个问题?以下代码总是出错,请多多指正,谢谢!!! 绝对送分题,送分了。 有现在工作是做asp+mssql的吗,留个qq号大家交流交流,我的是5662229 请问高程,熟悉delphi/sql server oracle linux 在武汉可以拿到什么薪水? 2001年的中级程序员成绩下来了(浙江)我的成绩是上午:45 下午:53 .请问我有几成的把握可以通过? 问个菜问题:BDE和ADO分别是什么,有什么区别? 我第一次用asp连接数据库(access2000),是不是需要先设置一下呀,为什么网页显示出错呀 为什么我想保存图片(*.bmp *.jegp)时总是出错,请高人指点。 error C2653: 'CTestView' : is not a class or namespace name 怎么解决? NT4.0的局域网,如何将WIN2000 PRO加入域中,以便能够访问它提供给我的一部分空间。 请问有谁知道在xp怎样侦测网络中发送到本机的数据流 VC,BROLAND C都没有graphics.h?? 关于Access数据库性能的一个问题 如果不用指针,如何删除内存变量 关于InstallShield Express-Borland Limited Edition 3.03的几个菜鸟问题 高手帮我啊 我该不该跳槽?(回答有分) 博弈算法的高手请进,区区小分不成敬意(求得分函数) 存储过程的问题 有关报表问题,绝对简单,但是我不会? 在程序中如何使用tabel.filter语法来过滤不同类型的数据???小菜虫我是有分必加 怪事!CString类怎么了? 如何去掉记录中的怪字符? 困惑初学者的难题:如何在VC7.0中编译调试运行小程序?哪位大哥能说清楚高分送上!帮帮我们这些在地狱中水深火热的难兄。。,谢谢。。。 急死我了!!用Table连接时总要密码,那位大哥能帮帮我!!! 如何用SQL Plus查看Oracle中表间关联? CWnd中的声明空成员函数OnSize究竟有何作用? 有谁知道关于电子版的windows api相关的书下载的网址呀。我在线等呀。 怎样用网卡对接电脑 抗议!IE是否自动为收藏夹做过备份? 如何通过NDIS编程取得以太网地址 今晚有多少人通宵? socket客户端能发,不能收是怎么回事? FDISK不能用了吗?真是奇怪呀?谁能帮我啊!!! 想通过sql语句找出这样重复的记录?如何写这个语句? 如何在delphi中显示和编辑sql server中超过256字节的字段 《程序员》的合定本有卖了吗? 最近我防问了一个黑客网站。一下中啦。桌面没有图标我看完啦。有没有高人帮我一下啊。 现有一个dll转为静态库的问题 请问怎样添加一个从CObject继承而来的新类啊? 如何在VB中用Outlook发电子邮件??? 妈呀,上午54,下午33,有戏吗?我完了。 请教:通过VB+ADO访问SQL Server 7数据不能更新记录? 低分低级问题 简单问题,送分喽!!文件调用问题!!! 如何定义IOCTL代码: 谁能推荐一本有关网络与通信的入门书? 看官们注意HttpURLConnection!!! 白兔和月亮阅读答案《品读》中的! 三峡——余秋雨.阅读理解题,顺长江而下,三峡的起点是白帝城.这个头开得真漂亮.对稍有文化的中国人来说,知道三峡也大多以白帝城开头的.李白那首名诗,在小学课本里就能读到.我读此诗不 AI是什么意思? 白兔和月亮阅读答案 请快白兔和月亮 周国平在众多的兔姐妹中,有一只白兔独具审美的慧心.她爱大自然的美,尤爱皎洁的月色.每天夜晚,她都来到林中草地,或是无忧无虑地嬉戏,或是心旷神怡 余秋雨的黄河一掬阅读题答案 矢量和是什么意思 8g硫在空气中完全燃烧,生成二氧化硫的质量是多少?化学方程式计算 人类为什么会有感情? 垂钓 余秋雨 阅读题去年夏天我与妻子买票参加了一个民间旅行团,从牡丹江出发,到俄罗斯的海参崴游玩.海参崴的主要魁力在于海,我们下榻的旅馆面对海,每天除了在阳台上看海,还要一次次 若一定质量的煤中含有16g硫,计算这些煤完全燃烧时生成的二氧化硫的质量 什么是水性凹印油墨? 西湖梦 余秋雨 1.第二段说“就白居易、苏东坡的整体情怀而言,这两道物化了的长堤还是太狭小的存在”,为什么说“太狭小”2.简要分析作者对林和靖的“急流勇退”的看法. 32克硫在氧气中充分燃烧,生成二氧化硫的质量是多少? LED灯珠的最佳驱动电压、电流是多少?常见LED光源以1W的为例,一般标明的额定电压3.0-3.4V,电流350MA,照这么算的话,即便使用输出3V的电源,他的最低功率也在1W以上,这个1W是怎么来的,在使用输出3V 凹印薄膜的油墨上墨量 白兔和月亮同样的月夜,同样的阴晴圆缺,是什么使白兔“从前的闲适心情一扫而光?”为什么会这样? 大功率LED灯珠怎么降电流?LED灯珠,3*1w串联,用恒流电源供电,11v,280-300mA.用什么方法可以把通过灯珠的电流降到200mA?电流降下来后温度会下降吗? 文学是人类情感……美好的情感和灿烂的智慧是什么意思 白兔与月亮白兔和月亮 在众多的兔姐妹中,有一只白兔独具审美的慧心.她爱大自然的美,尤爱皎洁的月色.每天夜晚,她来到林中草地,一边无忧无虑地嬉戏,一边心旷神怡地赏月.她不愧是赏月的 硫在空气中燃烧的现象 人类智能与人工智能的区别 中围绕白兔和月亮的关系,其主要情节可以概括为_____,_______和______ 关于硫在空气中的燃烧在铺有细沙的燃烧匙里放少量硫,加热至燃烧,观察硫在空气中燃烧的现象.这里"铺细沙"的作用是什么? 人工智能和人类智能区别? 在众多的兔姐妹中,有一只白兔独具审美的慧心.她爱大自然的美,尤爱皎洁的月色.每天夜晚,她来到林中草地,一边无忧无虑地嬉戏,一边心旷神怡地赏月.她不愧是赏月的行家,在她眼里,月的阴晴 阅读《白兔和月亮》,回答下列问题.根据第四,五自然段回答:这段文字采用里那些方法来写白兔? 根据硫在空气中燃烧现象的不同,可说明燃烧的程度与什么有关?根据硫在空气和氧气燃烧现象不同 到目前为止,人类已发现了几种元素? 意识的本质是什么?人类智能与人工智能的联系是什么? 硫在空气中与氧气中的燃烧现象 人类一共有几种感觉? 人工智能与人类的关系 硫的燃烧在空气中的现象是?在氧气中的现象是? 到现在为止,所发现的人类化石有哪几种? 人类可以发展到人工智能的时代吗? 月到中秋 阅读答案 目前为止人类发现了几种动物?目前为止,人类已经发现了有多少种动物?是200万、100万还是180万种? 在人工智能技术不断发展的背景下,你认为计算机和人类的关系将如何变化 月到中秋的作文怎么写?Tankyuo 人类现在为止发现的动物种类有几种 凹印油墨印刷中目前主要碰到哪些问题? ( ),月到中秋分外圆后面是月到中秋分外圆呦 柔印使用水基油墨和uv油墨,与胶印、凹印使用水基油墨和uv油墨有何区别? “再塑生命”的含义是什么?表达了作者怎样的思想感情? 单词中的ai都发些啥音?如何知道ai发什么音? 2W的LED灯珠的额定电流是多少? 送友人的释义和表达的思想感情要短的 含I-E(发ai的音)的5个英文单词记住,一定是I和E,一定要发[ai]的音,中间只能空一个字母. 2W的LED单颗灯珠的额定电流和电压分别是多少 表达的思想感情和表达的具体意思 发/aI/音的单词有哪些 下列物质在空气中燃烧后,产生都是白色固体的是( ) A.硫、木炭 B.磷、镁 C.煤、石油 D.蜡烛、铁 《我的思念是圆的》此处“圆”是什么意思,表达了什么思想感情 n后面有字母"i"的情况下,满足什么条件"i"发"ai"的音?如题另外 发"ai"的音节还有那些呢?需要满足何种规则 白兔和月亮 问:1这则寓言给我们什么启示?2请用三个小标题概况这个故事的情节 3 白兔2次赏月的心情有什么变化?为什么会产生这样的变化? 暮江吟的意思表达了什么思想感情 用燃烧法出去密闭容器中的氧气,应选择点燃(木炭,细铁丝,红磷或者硫粉) 阅读《白兔和月亮》,回答下列问题1.“或是无忧无虑地嬉戏,或是心旷神怡地赏月”一句用了什么修辞手法?有什么表达作用?2.“白兔仍然夜夜到林中赏月”,句中“仍然”可否删掉?为什么?3.“ 余秋雨的中秋 文章阅读题余秋雨的中秋 文章阅读题余秋雨的中秋 文章阅读题余秋雨的中秋 文章阅读题余秋雨的中秋 文章阅读题余秋雨的中秋 文章阅读题他的中秋阅读题不是文章 知道电机的电阻和电压求电流和功率现在知道电机的电阻为为2.9欧,直流,接在24V的电压下,求功率和电流,尺寸为4CM*4CM*4CM,正方型外表,属于小型微电机的一种.
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn