基于VBA的控件类设计与应用.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
 基于 VBA 的控件类设计与应用 付尚朴,李方军,韩卫华* (中国工程物理研究院工学院,四川 绵阳 621900) 5 10 15 20 25 30 35 40 摘要:在设计基于 VBA 的 Word 试题模板时,发现在 VBE 环境下无控件数组,使得同类控 件只能有分开的不同的事件过程,导致编程效率低。本文通过类设计实现同类控件具有相同 的事件过程。在控件类的设计过程中,从类的概念和实践出发,得出控件可类化的一些属性 和事件过程,对类属性的初始化采用了直接和间接的两种方法,给出了利用复选按钮进行单 项选择的关键技术代码。 关键词:控件类;控件可类化的特征;属性初始化方法 中图分类号:TP311.1 Control-class Design And Application on VBA Fu Shangpu, Li Fangjun, Han Weihua (CAEP Institute of Technology, SiChuan MianYang 621900) Abstract: When the Word exam template on VBA is designed, VBE has not control array.The similar control have different events process.Programming is low efficiency. This paper realizes that similar control have the same event process through the class design. In the control-class design, from the concept of class and the practice, some properties and events process are generalized on control class.Two methods of the direct and indirect initialize the class attribute.The code of key technology is given,when check buttons realize the single item choice. Keywords: Control class; Control characteristic on class; Method of attribute-initialization 0 引言 用 VBA 设计程序时,插入用户窗体,在窗体上添加同类型的控件,这些控件不经特殊 处理是不能有相同的事件过程,有 10 个控件,则需要设计 10 个事件过程,有 100 个控件, 则需要设计 100 个过程;如果这些控件有相同或相似的事件过程体,一个过程的个别地方修 改,其它相同的事件过程不能自动修改,不能一改多改,这样设计程序效率较低,而且也不 符合算法设计的核心(用循环、递归实现算法)[1]。 例 0.1 有命令按钮名为 cmd1 和 cmd2,它们的标题分别是“单击命令按钮 1”和“单 击命令按钮 2”,单击它们显示相应标题,则需两个事件过程: Private Sub cmd1_Click() MsgBox cmd1.Caption End Sub Private Sub cmd2_Click() MsgBox cmd2.Caption End Sub 如果类似命令按钮较多,设计起来是比较麻烦的。解决的方法有控件类化和集合化,由 于面向对象程序设计采用类,我们这里主要讨论同类控件的类化方法和应用。 1 控件类设计方法 类是将相似对象的相同特征抽象出来,如属性和操作,而对象是这个类的实例,类也可 理解为对象模板[2-6]。经实践发现,同类控件可抽象的特征有控件名、序号和事件过程等, 作者简介:付尚朴,(1963-),男,副教授,计算机应用。E-mail: zsutg@ -1- VBA 中类代码保存在类模块、窗体模块等中。 例1.1 在例 0.1 中,类抽象如下表  45  控件特征 cmd1、cmd2 中 cmd cmd1、cmd2 中 1、2 表 1 命令按钮特征抽象 抽象 cmd(事件变量,用 WithEvents 定义) index cmd1_Click()、cmd2_Click() cmd_Click() 进入 VBE,插入类模块 cbC,输入类模块代码: Private WithEvents cmd As MSForms.CommandButton Private index As Integer 50 55 60 65 Sub

文档评论(0)

文档分享 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档