明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3015|回复: 14

如何把vba程序换成vb程序?复杂吗?

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

现在做好一个vba程序,但是要求换成vb,里面有5个公共模块,和3个类模块,一个窗体,容易实现吗?没弄过,高手帮忙

 楼主| 发表于 2005-7-20 15:28:00 | 显示全部楼层

找到一些介绍文档,在vb的project/reference选择autocad release 15,我的cad是2002,没找到上述内容,只好选择autocad2002类型库,然后在vb窗体下设了个按钮,添加如下代码,可是cad怎么不画图呢?大家给看看:

Private Sub Command1_Click()

On Error Resume Next

Dim acadApp As AcadApplication

Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
    Err.Clear
    Set acadApp = CreateObject("AutoCAD.Application")
    If Err Then
        MsgBox Err.Description
        Exit Sub
    End If
End If
MsgBox "Now running" + acadApp.Name + "vertion" + acadApp.Version

Dim acadDoc As AcadDocument
Set acadDoc = acadApp.ActiveDocument

Dim lineObj As AcadLine
Dim p1(2) As Double
Dim p2(2) As Double
p1(0) = 1: p1(1) = 2: p1(2) = 5
p2(0) = 100: p2(1) = 200: p2(2) = 0
Set lineObj = acadDoc.ModelSpace.AddLine(p1, p2)
ZoomAll

End Sub

发表于 2005-7-20 19:48:00 | 显示全部楼层
不复杂,我就是在vba下编程调试好再转到vb下编译的。只要将document等关键字修改一下就可以了。
发表于 2005-7-20 22:09:00 | 显示全部楼层

如果有VB基础就不难

 楼主| 发表于 2005-7-21 08:33:00 | 显示全部楼层

谢谢两位!二楼兄台,可否把你的步骤说一下,实在是着急啊,这个周末之前必须弄出来啊,谢谢,不胜感激

发表于 2005-7-21 08:49:00 | 显示全部楼层
上面代码没问题啊,我刚试过,完全可以画图!
 楼主| 发表于 2005-7-21 10:00:00 | 显示全部楼层

问题来了,上面的代码确实对,但是必须先打开autocad2002,才可画图,如果没有开cad直接运行VB程序,程序将打开一个acad.exe,进程ID号为1092,但是这样根本打不开cad2002,我的CAD进程ID为1904,而且一点错误提示都没有,只能在任务管理器进程中看到那个1092

 楼主| 发表于 2005-7-21 15:25:00 | 显示全部楼层

谁有用VB写的程序,我参考一下,最好是有多个公共模块和类模块,现在我的程序已经很庞大,从Vba到VB实在不好改,参考一下你们怎么写的!

 楼主| 发表于 2005-7-21 15:54:00 | 显示全部楼层

我的邮箱y1982_0@126.com  或y1982_0@hotmail.com,谢谢高手帮忙,感激不尽

 

发表于 2005-7-22 10:32:00 | 显示全部楼层

其实VBA转VB并不复杂,将相应的模块等导出,到VB中在导入.设定相应的函数引用,就可以了,具体你可以参考"efan2000"的文章,我就是和他学的.

另外,在此还是想和各位高手谈谈,如何能获得当前激活的ACAD.

因为如果启动了多个acad程序,上面的代码仅能获得第一个acad程序.如果我需要的不是第一个acad怎么办?

 

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

本版积分规则

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

GMT+8, 2024-11-27 12:55 , Processed in 0.187366 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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