找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1828|回复: 29

[ARX程序]:AutoCAD多文档Tab2002版原代码

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

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

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

×
AutoCAD多文档Tab,是AutoCAD2002版源代码,论台上已有贴子和源码,不过是AutoCAD2002版的源码,代码结构有点不同,需作一点修改,不过两者代码编译出的ARX程序都有一个BUG,就是当先装载本ARX程序,然后用Open打开已有文档时CAD会崩溃,而在先Open打开已有文档后再装载本ARX程序,就不会使CAD崩溃。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-4-21 22:17:34 | 显示全部楼层
沙发了

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

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2005-4-25 21:32:12 | 显示全部楼层
这个AutoCAD多文档Tab2002版上面的BUG,帮我调试一下好吗
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2005-4-25 23:15:23 | 显示全部楼层
老大,我下了,想帮你调试.
看了代码是MFC,狂晕, 忍了(为了那个DD)。
编译不过,缺一些头文件,平遮一些还缺 (idgraph.h, acappvar.h),去那搞。

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2005-4-27 23:16:45 | 显示全部楼层
经过一番疯狂测试,终于确定改程序的BUG,就是在打开一张旧图时如果存在Drawing1.dwg文件,则会崩溃。造成崩溃的原因是:在打开旧图时AutoCAD会进行如下操作,创建新AcApDocument,设置为当前文档,然后销毁Drawing1.dwg,然后再把打开的图设为当前文档,
注意它销毁了Drawing1.dwg,而在程序中的documentToBeDestroyed(AcApDocument *pDoc)函数中,总是在TabCtrl中去掉了m_pView,而此时的m_pView其实是当前文档,也就是刚打开的图纸,这样就造成了刷新TabCtrl是崩溃了。


解决办法:建立一个命令行反应器,监视是打开文档还是新建文档,如果是打开文档,且存在Drawing1.dwg文件,则把TabCtrl中的相应Cview删除。其它则正常操作即可。


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

使用道具 举报

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

使用道具 举报

发表于 2005-4-28 10:42:13 | 显示全部楼层
还要注意drawing1.dwg必须没有操作过,只要被操作过,它是不会被销毁的。

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

使用道具 举报

发表于 2005-4-28 13:01:53 | 显示全部楼层
有人比我先,倒。高手如云。

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

使用道具 举报

发表于 2005-4-28 14:43:31 | 显示全部楼层
一听说有DD大家都来了!!!

你的这个工程头文件是ARX2002的,但库文件却是ARX2000的 !! 晕

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

使用道具 举报

发表于 2005-4-28 14:45:52 | 显示全部楼层
楼主提供的例子是CControlBar派生的bar,这样打开属性对话框等停靠工具的时候就不是很好看了,
建议直接在主窗口里添加tab控件
论坛上有人提出编程思路的
arxtab编程思路
原理比较简单:
1、建立一个文档管理器反应器,监视文档的切换/创建/销毁
2、建立一个编辑器反应器,监视文档的保存/另存导致的文件名称改变
3、动态创建一个Tab控件,附着到AutoCAD的MDIClient窗口底部
4、建立一个钩子过程,监视AutoCAD的MDIClient窗口移动/大小变化
5、通过文档管理器反应器和编辑器反应器的动作显式操作Tab控件
6、通过Tab控件的UI动作显式操作文档的创建/销毁/切换/最大化/最小化
7、通过钩子监视到的MDIClient窗口动作动态调整Tab控件与MDIClient窗口的相对位置。
就这些内容,应该比较好理解!

但是要做稳定了不是很容易,
不信你试试[/COLOR]

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

使用道具 举报

 楼主| 发表于 2005-4-28 20:05:56 | 显示全部楼层
一大堆的动态库,一个简单的功能,何必如此麻烦。
能把你的代码给我们学习学习吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-23 10:29 , Processed in 0.469397 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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