CorelDRAW VBA - 创建GMS全局宏工程

coreldraw-vba-create-gms

目的

这篇教程将教会你使用 CorelDRAW 来创建自己的宏工程(项目)。宏工程(GMS工程)主要是用于开发自定义程序,它将所有VBA代码保存在一个后缀名为 .gms 的文件中,该文件可以拷贝到其他机器上供他人使用。

注意:高版本 CorelDRAW 创建的GMS工程可能在低版本中无法使用,但是,在低版本 CorelDRAW 中创建的GMS宏工程可以在高版本的 CorelDRAW 中使用。

一、创建宏工程

打开 CorelDRAW X7,执行工具菜单下的“宏 > 宏管理器”命令,或者按快捷键【Alt】+【Shift】+【F11】打开宏管理器面板,选中 Visual Basic For Applications 节点,执行面板顶部的“新建宏工程”命令,如下图所示:

coreldraw-macro-manager
coreldraw-macro-manager-panel
coreldraw-new-macro-project.jpg

我们将这个宏工程命名为MyMacro。保存该宏工程(GMS工程)后,在面板上可以看到我们刚刚创建的宏工程。展开这个宏工程的默认脚本,右键点击,执行“编辑”命令,进入VBA代码编辑界面,如下图所示:

coreldraw-macro-project-edit

编写VBA代码

进入VBA代码编辑器界面,默认是空白的,没有任何代码。我们在窗口中键入以下3行代码:

Sub main()
    MsgBox "Hello, This is my first macro project!"
End Sub

如下图所示:

coreldraw-macro-project-main-code

代码说明:这3行VBA代码的作用是创建了一个名为 main 的过程(方法),该过程(方法)的功能是使用 VB函数 MsgBox 弹出一个消息框,你如果已经阅读过 CorelDraw VBA - 第一个Hello World程序 这篇文章,就知道它的作用了。下面我们试着运行它看看。

运行宏工程

进入文档界面,在宏管理器面板中,找到我们创建的 MyMacro 宏工程,可以看到多出了一个可运行的脚本节点。双击即可运行,如下图所示:

coreldraw-macro-project-running

入口函数(方法)暴露

入口函数,也叫入口方法。在程序语言设计中是一个通用的概念。即指定一个代码块,程序将从这个代码块开始运行,相当于程序的入口。

现在,我们再加入一个名为 invisibleMethod 的过程(方法),在方法前面用 Private 关键字来修饰。VBA代码如下:

Private Sub invisibleMethod()
    MsgBox "This method is private method."
End Sub

同时,我们再将 main 过程(方法)中的代码体修改一下,让它调用这个过程,VBA代码如下:

Sub main()
    invisibleMethod
End Sub

连起来,代码如下:

Sub main()
    invisibleMethod
End Sub

Private Sub invisibleMethod()
    MsgBox "This method is private method."
End Sub

现在,再到宏管理器面板去查看,会发现这个方法不会被暴露出来。双击运行 main,会发现 invisibleMethod 被调用了,如下图所示:

coreldraw-macro-method-call

小结

  • 宏工程是用来编写自定义全局宏代码的,与 CorelDraw VBA - 第一个Hello World程序 这篇文章不同的是,后者是将VBA代码和文档放在一起运行。这种方式不太好,在某些情况下,带有VBA代码的 CorelDRAW 文档,可能无法打开,或者打开时会提示错误。
  • 宏工程又叫GMS工程,宏工程的文件后缀名是 .gms
  • 宏工程文件默认存放的路径是在 你的CorelDRAW软件安装目录/Draw/GMS 这个文件夹下面。
  • 可以用 Private 关键字来修饰一个隐藏的方法,该方法表示是当前模块私有的,不会对外公开。

原创声明:本文首发于个人CorelDRAW VBA博客,请尊重文章版权。
转载请注明原文链接:http://www.cdrvba.com/coreldraw-vba-macro-project/


CorelDRAW VBA - CSDN文章专栏https://blog.csdn.net/column/details/27356.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值