明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1925|回复: 2

mccad进来看一下,你的程序有点不懂

[复制链接]
发表于 2006-4-7 22:20:00 | 显示全部楼层 |阅读模式

mccad你好,我在论坛上看到你回答在VBA中打开有预览的对话框,你的回答如下:

在VBA没有直接的方法这样做。但是,你可以通过LISP和AutoCAD之间的通讯来完成。在LISP中有一个名叫getfiled的函数,它可以预览DWG并且与AutoCAD的"Open File Dialog"表现一样。
    首先,通过SendCommand方法发送getfiled表达式给AutoCAD命令行并且定义一个系统变量USERS1以保存文件名。然后,你可以用GetVariable方法获得这个系统变量。最后,象使用其它任何变量一样使用它。

Public Sub OpenDialog()
Dim fileName As String
ThisDrawing.SendCommand "(setvar " & """users1""" & "(getfiled " & """Select a DWG File""" & """c:/program files/acad2000/""" & """dwg""" & "8)) "
fileName = ThisDrawing.GetVariable("users1")
MsgBox "You have selected " & fileName & "!!!", , "File Message"
End Sub
我运行了一下,可以运行,但就是选择了文件之后没法打开,且一直在选择文件对话框里面,请你看看,

再者想请问一下,你的sendcommand里面的代码都是代表什么意思,

我的编程代码是这样的,好像也可以实现有图片显示的打开对话框啊,你看一下,谢谢

UserForm1.Hide

ThisDrawing.SendCommand "open"
ThisDrawing.SendCommand " chr(13)"
UserForm1.show

好像也行的

 楼主| 发表于 2006-4-7 22:30:00 | 显示全部楼层

不好意思,没看到你在另外一个页面里回答了,

我运行了,出来一个对话框,但是点打开图片时不能加载图片,一直让我打开,命令行提示为

命令: (setvar "users1"(getfiled "Select a DWG File""c:/program
files/acad2000/""dwg"8)) ; 错误: AutoCAD 变量设置被拒绝: "users1" nil

好像只有点取消才能退出,不知道为什么,请解答一下,谢谢

发表于 2006-4-8 06:21:00 | 显示全部楼层

这段代码只是用于选择文件,把文件名和路径传递给系统变量users1,而不是用于打开文件。

而你前面的代码open是直接调用AutoCAD的命令打开文件。

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-27 04:26 , Processed in 0.178468 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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