乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 190|回复: 10

关闭AutoCAD时的事件

[复制链接]

23

主题

72

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
164
发表于 2007-10-23 17:02:33 | 显示全部楼层 |阅读模式
当有人想在关闭一个绘图时启动某个事件时,他可以使用“此绘图”模块中的相应事件。然而,我希望李乐在整个节目结束时写点什么。那么,关闭AutoCAD时有类似的事件吗?

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

23

主题

72

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
164
发表于 2007-10-23 19:30:05 | 显示全部楼层
我承认我不明白MsgBox的用法,但是谢谢;我要试一试!
回复

使用道具 举报

116

主题

996

帖子

9

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1466
发表于 2007-10-24 01:04:48 | 显示全部楼层

我想只是为了演示事件可以被捕获,并且陷阱的返回值决定应用程序是否关闭。
回复

使用道具 举报

23

主题

72

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
164
发表于 2007-10-24 01:52:27 | 显示全部楼层
我们有同样的想象力克里。
克里现在将在接下来的三个小时内消失,因为他蜷缩在胎儿的位置,在一个角落里,和他的巫比一起,问宇宙,“为什么?”
回复

使用道具 举报

23

主题

72

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
164
发表于 2007-10-24 11:07:00 | 显示全部楼层
你能帮我多一点吗?我使用了代码,但我没有设法做任何事情。顺便说一句,我意识到
  1. Public WithEvents ACADApp As AcadApplication

必须放在一个类模块中。
我还添加了其他两个子项 ,但是当我关闭AutoCAD时,没有任何反应......
实际上,我正在尝试做的是在AutoCAD关闭时删除临时文件 。你能帮我(再次)吗?
回复

使用道具 举报

116

主题

996

帖子

9

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1466
发表于 2007-10-28 16:15:05 | 显示全部楼层
你可以把所有的代码放到这个绘图模块里,这个模块是IIRC的一个类模块。
我的第一个建议是在cod的第一行设置一个断点。关闭autocad。如果事件被触发,yousub将运行并在第一行停止。您可以使用F8一行一行地单步调试您的代码,注意结果,看看是否能找出问题所在。
我的零级假设是,你需要摆脱错误恢复,这样你的例行程序就可以在应该的时间和方式中断。
其次,如果您无法解决问题,请发布您的代码,这样我们就可以玩家庭游戏了。
回复

使用道具 举报

6

主题

103

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
127
发表于 2007-10-28 23:20:45 | 显示全部楼层
我把所有的代码都放在ThisDrawing模块中,在第一行放了一个标记(Set ACADApp=......),仍然没有...这是我的全部代码:
  1. Public WithEvents ACADApp As AcadApplication
  2. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  3. Sub Example_AcadApplication_Events()
  4.     Set ACADApp = GetObject(, "AutoCAD.Application.16")
  5. End Sub
  6. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  7. Private Sub ACADApp_BeginQuit(Cancel As Boolean)
  8.     '
  9.     MySubmarine
  10.     '
  11.     If MsgBox("AutoCAD is about to shut down.  Do you want to continue with the shutdown?", vbYesNoCancel + vbQuestion)  vbYes Then
  12.         Cancel = True
  13.     End If
  14. End Sub
  15. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  16. Private Sub MySubmarine()
  17.     Kill "c:\MyDamnStupidFile.txt"
  18. End Sub

顺便问一下,.16代码是做什么的?
回复

使用道具 举报

23

主题

72

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
164
发表于 2007-10-29 01:35:29 | 显示全部楼层

.16是AC2004
有几种方法可以在yoy使用不同版本的情况下错误捕获它。
回复

使用道具 举报

6

主题

103

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
127
发表于 2007-10-29 04:49:53 | 显示全部楼层
哦,好的。但是嘿!你怎么知道我在使用AutoCAD 2004 ? ? ? ! ! ! !
回复

使用道具 举报

23

主题

72

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
164
发表于 2007-10-29 07:32:14 | 显示全部楼层
我有一个我之前在lisp上写的,你可以在VBA上翻译代码3]
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-6 08:06 , Processed in 0.474893 second(s), 72 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表