SOLIDWORKS二次开发与API教程(2020版)
上QQ阅读APP看书,第一时间看更新

1.7 向宏中添加用户窗体

通过在宏中添加用户窗体,可以为程序添加用户界面,如图1-15所示。

图1-15 向宏中添加用户窗体

插图

添加用户窗体

● 在VBA中,单击【插入】/【用户窗体】。

● 在VBA中,在【工程】窗口中右击宏,选择【插入】/【用户窗体】。

默认情况下,VBA工具箱会和窗体一起显示。如果没有,单击【视图】/【工具箱】可以使其显示。

步骤24 向宏中添加用户窗体 在VBA中,单击【插入】/【用户窗体】。

步骤25 编辑用户窗体属性 选中的用户窗体会高亮显示,这时在用户窗体对象的属性窗口中输入以下属性值,如图1-16所示。

扫码看视频

提示

如果需要的属性窗口没有在代码编辑器中显示,按<F4>键可以调出该窗口。或者,也可以通过单击菜单中的【视图】/【属性窗口】使其显示。

步骤26 向窗体添加控件 从工具箱中拖放1个标签和5个命令按钮到窗体上。使用下面的内容设置各个控件,如图1-17所示。

图1-16 编辑用户窗体属性

图1-17 添加控件

步骤27 为每个按钮添加单击事件 双击窗体上的每个按钮就可以为这些控件添加按钮单击事件句柄。当双击每个按钮时,VBA环境会自动为源代码添加事件句柄框架。在宏运行时,若用户单击按钮,添加到事件句柄中的代码就会执行。

提示

每次添加一个新的事件句柄,可以使用<Ctrl>+<Tab>组合键切换回用户窗体。在VBA中,窗体和窗体背后运行的源代码是分离的。

步骤28 将代码从模块移到按钮事件 此时,整个宏应包含一个模块和一个窗体。下面我们要在保留模块和窗体的情况下将代码从一个位置移到另一个位置。剪切模块中的所有代码,仅留下空的程序入口点(Sub main....End Sub)。将代码粘贴到每个命令按钮(Exit按钮除外)的单击事件中。每个按钮代表不同的拉伸距离。仔细观察下面的代码会发现,对于每个按钮的单击事件,仅改变了一个参数(以浅灰色显示)。

步骤29 为Exit按钮编写单击事件代码

步骤30 在模块中添加代码 模块的程序入口点需要显示用户窗体,这样用户窗体才会在SOLIDWORKS中出现。请输入下面的代码行:

步骤31 保存并运行宏 保存宏。打开SOLIDWORKS,创建一个新的零件,从宏工具栏或者VBA编辑器运行宏。单击按钮创建不同长度的圆柱体,如图1-18所示。

图1-18 创建不同长度的圆柱体

步骤32 退出宏 单击Exit按钮结束宏,并返回到VBA。

步骤33 添加第二个用户窗体 单击【插入】/【用户窗体】,输入下面的属性值:

步骤34 为第二个窗体添加控件 为了捕获用户输入,这里添加文本框控件,要求用户指定直径和深度,而不是通过硬编码的方式。用下面的内容设置各个控件,如图1-19所示。

图1-19 添加控件

步骤35 为按钮添加响应代码 下面要把文本框中的字符串转换成double型的值,以对应于直径和深度。在已有的代码中,从frmMacro1a的一个按钮响应中复制代码,然后粘贴到frmMacro1b的cmdBuild按钮的单击响应中,然后对代码进行以下调整:

步骤36 为Exit按钮编写响应代码

步骤37 在模块中添加代码 模块的程序入口点需要显示用户窗体,这样用户窗体才会在SOLIDWORKS中出现。请输入下面的代码行:

步骤38 保存并运行宏 运行结果如图1-20所示。

图1-20 运行结果

步骤39 退出宏