mccad 发表于 2003-10-14 22:22:00

发现VBA的对象模型的一个秘密,可能直接通过编程来修改图形特性

mccad 发表于 2003-10-14 22:24:00

要使用 VBA 或 AutoLISP 访问图形特性(如 Title、Subject、Author 和 Keywords 等),必须使用 IAcadSummaryInfo 界面。
IAcadSummaryInfo 界面可以作为 AutoCAD 对象模型中 Document 对象的 SummaryInfo 特性来访问。该界面包含 8 个字符串 (BSTR)
特性(Author、Comments、HyperlinkBase、Keywords、LastSavedBy、RevisionNumber、Subject 和 Title),此外还包含用于使用自定义特性的方法。自定义特性的索引从 0 开始。索引的范围是从 0 到自定义特性的个数减 1。关于 IAcadSummaryInfo 的其他信息可以在 VBA 对象浏览器中找到。

gzy 发表于 2003-10-14 22:26:00

是2004才显示上面的信息吧?

mccad 发表于 2003-10-14 22:36:00

是2004新增的内容,但在帮助文件中是找不到的,它藏于对象模型中。
还有其它几个也没有在帮助文件中显示出来:
1.使用 PreferencesUser 对象,可以使用 SCMTimeMode 和 SCMTimeValue 特性来控制命令处于活动状态时快速单击右键是否相当于按 ENTER 键。如果 SCMTimeMode 设置为“TRUE”,则单击右键相当于按 ENTER 键;如果 SCMTimeMode 设置为“FALSE”,则单击右键被禁用。(“FALSE”是初始值)。SCMTimeMode 的值存储在 SHORTCUTMENU 系统变量中;要设置 SCMTimeMode,必须将 ShortcutMenuDisplay 特性设置为“TRUE”。如果 SCMTimeMode 为“TRUE”,SCMTimeValue 特性将确定用户为显示快捷菜单而必须按下鼠标键的毫秒数。关于这些特性的其他信息可以在 VBA 对象浏览器中找到。
2.通过编程向工具栏添加图标之后,请使用 acMenuFileSource 保存菜单文件。如果使用 acMenuFileCompiled 保存菜单文件,然后在同一任务中使用“自定义工具栏”对话框,AutoCAD 可能会异常关闭。
3.MText 对象现在具有 LineSpacingDistance 特性,该特性可用于设置多行文字的行间距比例。LineSpacingDistance 特性更改了 MText 对象的 LineSpacingFactor 特性。

除了 ActiveX and VBA 开发人员指南中注明的更改之外,AutoCAD 2004 的 AutoCAD 对象模型还包括以下更改:关于这些特性的详细信息,请参见 ActiveX and VBA Reference 中的相应主题。

Length 特性。Acad3DPolyline、AcadLWPolyline 和 AcadPolyline 对象现在支持该特性。
        RemoveHiddenLines 特性。该特性现在已废弃,并将在 AutoCAD 以后的版本中删除。使用 ShadePlot 特性来代替它。
        ShadePlot 特性。该特性指定了视口的着色视口打印模式。
        HWND 特性。Application 对象现在支持该特性。

hicoffee 发表于 2006-8-12 02:25:00

明兄能告诉我用LISP如何将信息写入“自定义”栏并从中提取吗?
页: [1]
查看完整版本: 发现VBA的对象模型的一个秘密,可能直接通过编程来修改图形特性