明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: lazybones

使用delphi开发AutoCAD的入门级问题(整理添加中)

  [复制链接]
 楼主| 发表于 2004-12-31 10:41:00 | 显示全部楼层
本帖最后由 作者 于 2004-12-31 11:11:17 编辑

又搞定一个问题,使用API函数将AutoCAD窗口置顶 SetForegroundWindow(acad.HWND);
或者
BringWindowToTop(acad.HWND); 我不知道二者差别
 楼主| 发表于 2004-12-31 10:52:00 | 显示全部楼层
新问题,如果AutoCAD有一个命令正在执行中,如,等待输入直线的另一个端点,此时会触发一个异常,提示“被呼叫方拒绝接受呼叫”,如何能够先取消 AutoCAD正在运行的命令呢,就像在CAD中选择菜单命令先“^^C”一样的效果?
 楼主| 发表于 2004-12-31 11:09:00 | 显示全部楼层
使用命令行画一个圆
acad.ActiveDocument.SendCommand('circle 10,10,10 100 ');
注意空格
 楼主| 发表于 2004-12-31 11:28:00 | 显示全部楼层
实现命令行提示
acad.ActiveDocument.Utility.Prompt('hello'+#13+#10);

 楼主| 发表于 2004-12-31 11:40:00 | 显示全部楼层
新问题
如何将自己的应用程序窗体和AutoCAD窗体一上一下绑定在一起,使用鼠标在任务栏单击二者之一,则应用程序被激活,置于最顶层,AutoCAD排在其 下。好比应用程序窗体是AutoCAD的模态窗口一样,当然,应用程序窗口还要能暂时隐藏,对AutoCAD进行手工操作之后再show出来。
发表于 2005-1-4 20:28:00 | 显示全部楼层
我也在学delphi二次开发autocad,请大家多少指教
发表于 2005-1-4 20:46:00 | 显示全部楼层
摸索了三天,写了个绘制六角头螺栓的程序 http://hizone.91i.net/123.exe,请大家pp
发表于 2005-1-5 08:25:00 | 显示全部楼层
1、用异常处理语句不行吗?就像VBA一样! 2、绑定CAD窗口我可没试过,但你要应用程序窗口能暂时隐藏,对AutoCAD进行手工操作之后再show出来,可以用Form.hide和Form.show来实现!这还是跟VBA一样的! 我爱编程,共同提高吧!
 楼主| 发表于 2005-2-10 09:19:00 | 显示全部楼层
本帖最后由 作者 于 2005-2-15 16:39:08 编辑

构造选择集时遇到麻烦,用户屏选vba语法为:object.SelectOnScreen [FilterType][, FilterData],套用到delphi时s1.SelectOnScreen();却非要那两个可选参数,编译通不过,不知谁有经历?如何解决?
 楼主| 发表于 2005-2-15 20:58:00 | 显示全部楼层
令人悲观的是,察看AutoCAD_TLB.pas,类型库转换成.pas后SelectOnScreen的两个参数并不像VBA一样是可选的。



不过,有一招可谓破釜沉舟:不引入类型库,AutoCAD有关的对象均声明为OleVariant,这样SelectOnScreen可以实现缺省参数,可是所有的代码提示就没有了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-27 20:27 , Processed in 0.173393 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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