Visual Basic(简称为VB)是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发 Windows 环境下的各类应用程序。它简单易学、效率高,且功能强大可以与 Windows 专业开发工具SDK相媲美。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的广泛应用程序接口(API)函数,动态链接库(DLL)、对象的链接与嵌入(OLE)、开放式数据连接(ODBC)等技术,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。随着版本的提高,Visual Basic的功能也越来越强。5.0版以后,Visual Basic 推出了中文版,与前个版本相比,其功能有了很大提升。
Visual Basic 6.0作为Visual Studio 6.0的优秀一员,已成为企业级快速开发的利器。Visual Basic 6.0在数据访问方面有了很大的改进,新的ADO组件让对大量数据快速访问成为可能。数据环境和新的报表功能也让数据开发有了全新的体验。Visual Basic 借助COM/COM+强大的功能,可以开发具有多层结构的分布式应用程序。同时,Visual Basic还可以在IIS上开发性能超群的Web应用程序。Visual Basic 6.0在语言方面和IDE方面的改进都不大,但是许多新增的组件成为Visual Basic开发人员手中的利器,如File System Object等。新的字符串函数Split和Replace等也给Visual Basic的程序员带来很大方便。
Visual Basic 6.0具有下述优点:
(1) 面向对象
(2) 事件驱动
(3) 软件的集成式开发
(4) 结构化的程序设计语言
(5) 强大的数据库访问功能
(6) 支持对象的链接与嵌入技术
(7) 网络功能
(8) 多个应用程序向导
(9) 支持动态交换、动态链接技术
(l0) 联机帮助功能
VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。它不像高级语言Visual C++那麽复杂,但它的功能很全,程序员可以轻松的使用VB提供的组件进行二次开发,快速建立属于自己的应用程序。
2 利用VB实现圆台交互式绘制的实现过程
2.1 启动VB程序
启动VB程序,VB6.0的主窗口如图1所示,可以直观地看到主窗体主要有以下部分组成:标题栏;菜单栏;工具栏;窗体设计器;控件(工具)箱;弹出式(上下文)菜单 ;工程管理器窗口 ;属性窗口;对象浏览器 ;对象浏览器及窗体布局窗口。
建立一个新的标准EXE工程文件,对其进行重命名保存,重命名为"圆台绘制",将Form窗体文件重命名保存为"交互式圆台绘制",如图2所示。特别需要注意的一点是:在标题栏显示的当前的工程名及窗体名是通过修改属性窗口中"名称"属性及"caption"属性得以实现的,与实际的工程名及窗体名并无直接联系,实际的工程名及窗体名是通过诸如"(圆台绘制.vbp)"形式体现出来的。
图1 VB6.0主窗口
图2 重命名操作后的工程资源管理器
2.2 引用Solidworks类型库文件
要操作SW对象,那么添加SW引用是必不可少的。在VB里添加引用,单击菜单栏中【工程】【引用】命令,选择"SolidWorks exposed Type Libraries For add-in Use"(SolidWorks插件库文件)、"SolidWorks 2007 Type Libray"(SolidWorks库文件)和"SolidWorks Consant Type library"(SolidWorks常数库),如图3所示。本文其实只用到了"SolidWorks 2007 Type Libray"(SolidWorks库文件),但为了方便以后的程序扩展,将上述三种常用库文件一并添加。
图3 引用SolidWorks类型库
2.3 编辑窗体界面
(1)拖动工具箱组件板上的Lable控件、TextBox控件及CommandButton控件到Form上。
(2)接下来在属性窗口将Lable1、Lable2的属性分别设置为"圆台半径:"、"圆台高度:";将CommandButton1、CommandButton2的属性分别设置为"启动SolidWorks交互式绘图"、"退出SolidWorks软件"。编辑后的窗体界面如图4所示。
图4 编辑后窗体界面
2.4编程实现
在VB编程环境下,引用单元文件,创建相关函数及编写事件处理过程,实现程序功能。绘制圆台的详细程序代码及其注释如下所示:
Private Sub Command1_Click()
Dim swapp As Object
Dim part As Object
Dim boolstatus As Boolean
"定义接口
Set swapp = CreateObject("SldWorks.Application")
Set part = swapp.NewPart()
swapp.Visible = True
"获取solidworks软件接口并新建一个零件文件
part.InsertSketch2 True
boolstatus = part.Extension.SelectByID("前视", "PLANE", 0, 0, 0, False, 0, Nothing)
part.InsertSketch2 True
part.CreateCircle 0, 0, 0, 0, Val(R.Text) / 10005, 0
part.ShowNamedView2 "*上下二等角轴测", 8
part.FeatureManager.FeatureExtrusion True, False, False, 0, 0, Val(H.Text) / 1000, 0.01, False, False, False, False, 0, 0, False, False, False, False, 1, 1, 1
"建立模型
End Sub
点击"启动SolidWorks交互式绘图"后,程序调用SolidWorks自动绘制的圆台三维图如图5所示。可交互式修改参数,直至达到满意的效果。操作完成后点击"退出SolidWorks环境"可以自动关闭并退出SolidWorks环境。
图5 交互式绘图后结果
3 小结
本文同样以一个简单实例的实现过程为例,采用VB语言编制了相关程序,详细介绍了二次开发的具体实现过程,给出了重要文件的引用、属性设置、接口程序的编制和事件处理等过程的完整代码。通过上述实例的实现过程,可以看出: VB语言简单易学,学习过程中很容易上手;功能齐全,程序员可以轻松的使用VB提供的组件进行二次开发,快速建立属于自己的应用程序,在其各项高效强大集成功能的支持下,最终可方便快速地完成二次开发任务。
参照连载1中的通过宏录制实现的二次开发过程,可以清楚地看到,利用VB二次开发实现圆台绘制的具体命令源代码不需要自己编写,可以直接对宏录制的相关源码拷贝过来加以利用即可,只需要修改其中的相关变量参数诸如Val(R.Text)即可,易于实现,减轻了程序员的工作量,提高了程序的开发速度。
温馨提示:内容为网友见解,仅供参考
运用VB语言实现solidworks二次开发
参照连载1中的通过宏录制实现的二次开发过程,可以清楚地看到,利用VB二次开发实现圆台绘制的具体命令源代码不需要自己编写,可以直接对宏录制的相关源码拷贝过来加以利用即可,只需要修改其中的相关变量参数诸如Val(R.Text)即可,易于实现,减轻了程序员的工作量,提高了程序的开发速度。
在VB中运行 SolidWorks 宏 二次开发
首先你在VB中建好窗口,然后单击“工程—引用——”选择 “SolidWorks exposed Type Libraries For add-in Use”(SolidWorks插件库文件)、“SolidWorks 2007 Type Libray”(SolidWorks库文件、和“SolidWorks Consant Type library”(SolidWorks常数库),(可能版本不同会有区别)然后将宏文件中的 Set s...
刚刚接触Solidworks二次开发,用的是VB。 在VBA里面能执行的语句复制到VS...
SolidWorks二次开发,VBA和VB的命名规则不一样,引用对象的方法也有些不一样。
我用VB做SolidWorks的二次开发,下面是画两段轴的宏程序,请问其中有些...
Set skSegment = Part.SketchManager.CreateCircle(0#, 0#, 0#, 0.024825, 0.033812, 0#)这个是在草图平面上创建了一个圆,圆心在原点0#, 0#, 0#,,圆上一点为( 0.024825, 0.033812, 0#)Part.ShowNamedView2 "*上下二等角轴测", 8 Set myModelView = Part.ActiveView myModelView...
solidworks二次开发怎么和VB编程结合
在Solidworks里建好模型。用Access做一个格式为“.DB”的表格把模型尺寸参数化,再到VB宏里修改程序。把VB宏和ACCESS链接起来。运行宏。点相关参数就生成新模型。《Solidworks 高级功能与工程应用》北京邮电大学出版社,这本书里面有你要的。关于录制宏时的函数、参数等介绍的比较详细,建议你买本这书看看...
在做基于Solidworks的二次开发时,用VB连接Solidworks出现了下面的问题...
Private Sub Command1_Click()Dim swApp As Object Dim Part As Object Dim boolstatus As Boolean Dim longstatus As Long, longwarnings As Long '连接solidworks Set swApp = CreateObject("SldWorks.Application")swApp.Visible (True)'新建零件 Set Part = swApp.NewPart()Set Part = swApp....
用VB对SolidWorks进行二次开发,如何调用solidworks的界面
你在“工程”“引用”里的环境设置应该不完整,还有你的程序里有错误,应改为Private Function SwAddin_DisconnectFromSW() As Boolean swApp.removemenu swDocPART, "螺纹联结标准件库", ""Set swApp = Nothing '释放变量 SwAddin_DisconnectFromSW = True '设置去除连接标 End Function ...
我做solidworks二次开发时,运行程序界面无反应,请专业人士指点,不胜...
不能实现全参数化,所以就开始琢磨用VB改ProE里面的参数。因此在ProE中建模就有技巧,不能锁定这些参数,得允许VB修改这些参数。结果一试还真好用,一下子就成功了,我特高兴。终于实现了在VB里面写几句程序,生成对话框,填几个参数就能让ProE里面自动再生齿轮。那些关于ProE二次开发发表的论文所实现的...
在SolidWorks中如何用vb二次编程,修改一个实体的尺寸(如立方体的高)来...
SW中有个插件,叫DriveworksXpress,自动化设计的插件,可以通过规则,输入相应数值,即可得到预期模型。质量特性可以通过SW的自定义属性输出到TXT、excel中。
用VB做solidworks二次开发怎么实现零件自动装配啊?宏录制的代码不好用...
把要用到的零件打开,这是自动装配的前提 运行宏的时候,要么宏代码里有打开所需要零件的驱动代码 要么手动打开所需要的零件