找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 999|回复: 3

[ARX程序]:如何在自己的对话框调cad命令出现的对话框,并能够再返回自己的对话框中

[复制链接]
发表于 2005-1-20 15:02:44 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
例如在自己的对话框中的按钮中调出象style命令出现的对话框,操作完毕后再回到自己的对话框.

尝试用SendMessage送cad命令到命令行,倒是出现对话框,不过操作完毕,总是完全退出,不能够回到自己的对话框,请教一下!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-1-21 00:14:16 | 显示全部楼层
像你说的那些CAD的内置对话框,一般通过函数来调用,调用功能完成后,自然会返回调用点。如常用的几个对话框对应的函数为:
1、尺寸标注样式编辑对话框:
   int acedEditDimstyleInteractive(AcDbDatabase *,AcDbDimStyleTableRecord *,int);
2、多行文字编辑对话框:
   int acedEditMTextInteractive(AcDbMText *);
3、公差编辑对话框:
      void acedEditToleranceInteractive(AcDbFcf *);
4、CAD自己的文件对话框:
      int acedGetFileD(const char *,const char *,const char *,int,struct resbuf *);
      int acedGetFileNavDialog(const char *,const char *,const char *,const char *,int,struct resbuf**);
5、填充面板对话框:
      bool acedHatchPalletteDialog(const char *,bool,char * &);
6、线形对话框:
      bool acedLinetypeDialog(AcDbObjectId,bool,char * &,AcDbObjectId &);
7、线宽对话框:
      bool acedLineWeightDialog(AcDb::LineWeight,bool,AcDb::LineWeight &);
8、打印样式对话框:
      bool acedPlotstyleDialog(const char *,bool,char * &);
9、填充编辑对话框:
      void hatchedit(long,int,bool,const AcDbObject *);
10、文字样式对话框:
      void invokeTextStyleDialog(AcDbDatabase *,CString *);

这些函数大多不在文档中,可按两种方式使用:
1、将这些函数放在一个头文件中,使用时直接包含进来就可以了。
2、先用GetModuleHandle获取acad.exe的句柄,然后用GetProcAddress动态获取指定函数的入口地址,之后就可以直接调用了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-1-21 11:29:04 | 显示全部楼层
很感谢!你对cad编程很熟呀!

不过我尝试过后,发现在一般函数里引用没有问题,但是在对话框中调用就有问题,调不出那个cad对话框,不知道是什么问题!还在努力尝试中!

知道问题了,是资源问题,使用前需要用AfxSetResourceHandle设置cad资源,用完回设就可以了!

谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-8-10 09:53:51 | 显示全部楼层
可以给个例子看看吗?谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-22 20:30 , Processed in 0.317521 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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