乐筑天下

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

vba自动加载宏的问题,下面代码为啥只能在打开第一个文件时自动加载?

[复制链接]

3

主题

6

帖子

1

银币

初来乍到

Rank: 1

铜币
18
发表于 2008-11-17 16:23:00 | 显示全部楼层 |阅读模式
我想当打开cad文件时,自动加载命令,但下面的程序只能在打开第一个文件时加载vba宏,怎样才能每次打开文件时都能加载呢?
Public TestLoad As Boolean
Private Sub AcadDocument_EndCommand(ByVal CommandName As String)
   If Not TestLoad Then
          ThisDrawing.SendCommand "(defun c:rz()(vl-vbarun ""rz"")(princ))(princ)" & vbCr
        TestLoad = True
   End If
End Sub
回复

使用道具 举报

25

主题

219

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
319
发表于 2008-11-17 16:46:00 | 显示全部楼层
把IF去了试试
回复

使用道具 举报

3

主题

6

帖子

1

银币

初来乍到

Rank: 1

铜币
18
发表于 2008-11-18 11:06:00 | 显示全部楼层
去掉if语句后,1.每次运行完其他命令均会运行宏
                        2.打开新的cad文件时,不自动运行宏,只有运行任一命令后才运行宏。
怎样才能实现第一次打开文件时,自动运行宏?
回复

使用道具 举报

25

主题

219

帖子

6

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
319
发表于 2008-11-18 12:00:00 | 显示全部楼层
在 AutoCAD 收到打开现有图形的要求后立即被触发。
|
语法
object.BeginOpen(Filename)object
针对有效容器对象进行求值的对象表达式。 在这种情况下,唯一有效的容器为application(应用程序)。
Filename
String[字符串]
正在被打开的文件的名称。
说明
当AutoCAD 收到打开已经存在的文件的要求时,BeginOpen事件就会被触发。这个要求可能由用户通过文件打开对话框或是程序要求而出现。
当打开DXF格式的文件时,BeginOpen 事件不会被触发。
当打开已经存在的文件或是AutoCAD完成打开图形时,EndOpen事件将会紧跟BeginOpen 事件发生。例如,当用户选取“文件-->打开”,然后在对话框中选择文件,接着选取“打开”按钮,BeginOpen 事件即会被触发(在开始处理“打开”按钮时)。 一旦图形在 AutoCAD 窗口中为可见状态并且准备使用时,EndOpen事件被触发。
当创建新文件时, NewDrawing 事件被触发。
显示模态窗口时将不会触发任何事件。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-3 17:55 , Processed in 1.842206 second(s), 60 queries .

© 2020-2025 乐筑天下

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