打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
从零开始,步入Word宏编程的世界(第四讲)

实例四:窗体与基本的控件
知识点:

   1、窗体与控件的使用;
   2、什么是“设计时”、什么是“运行时”;
   3、了解什么是对像、属性、方法和事件。

 

   扎实的基础知识是我们顺利掌握VBA编程语言的先决条件。说到基础知识,我想告诉朋友们——我们必须建立起“面向对像”的编程思想。“面向对像”进行编程的思想实在是太重要了!我们所接触的所有事物都是对像,都有属性,也都有属性值。如果您不相信?那么请看——
   您怎样来描述自己家里的电视机呢?它的身高?体重?住址?年龄?颜色?频道个数?声道个数?音量大小?屏幕大小?分辨率?刷新率?……对,这些都是电视机的“属性”,在这里,“电视机”就是一个“对像”。
   以下,假设我们生活在“VBA编程语言”当中,生活中的事物就是VBA的对像——那么,我们怎样来找出一个“对像”的属性,或是怎能样来对“对像”的属性进行赋值呢?看下面的程序:
‘========程序名“您想看几频道”========
Sub 您想看几频道 ()
Dim X
X = InputBox(“请输入您想看的频道的值:”)
电视机 .频道 =  X
End Sub

 

   运行这代码,输入您想看的频道的值,比如“10”或是“36”,那么,您就会看到10频道或是36频道的节目。这里,“电视机”是对像,“频道”是它的属性,“10或36”是它的属性值。在“对像”引用自己的某个“属性”时,我们在它们之间用一个小圆点(英文的句号)来表示,具体的格式如代码“电视机.频道 =  X”中所示;设置值的时候,用等号来赋予它。


   说到赋值,您是不是想执行“电视机.屏幕尺寸 = 100吋”命令呢?呵呵,有些事物的属性值是“只读”的,不能修改,比如电视机的重量等。

   现在,我正在看一个节目,但我不知道这个节目所在的是几频道,怎么办呢?请看程序——
‘========程序名“当前频道是多少”========
Sub  频道是多少()
Dim  频道的值
频道的值 = 电视机 .当前频道
MsgBox  ( “频道的值” )
End  Sub

 

   程序不难懂吧?
   前一个程序“您想看几频道”中,我们是将“值”赋予对像的属性,后一个“频道是多少”程序中,我们是取得对像属性的“值”。这两种类型的程序在使用时刚好相反,但,它们在VBA编程语言中的运用几乎可以说是无处不在!!请一定要认真体会这两个程序中关于“对像”、“属性”与“值”之间的关系!!
   那么,什么又是事件和方法呢?对于电视机来说,当它的电源接通时就发生了“电源接通事件”,反之,它的电源断掉时就发生了“电源断掉事件”。方法,则是指人对电视机进行的操作,比如,现在显示的是10频道,我在电视机的频道调节按钮上,向前按了5次,则进入了15频道。电视机支持使用“频道按钮”进行“频道调节”的动作,就可以说成是它支持“用按钮调整频道”的“方法”,“5”就是这个方法的参数(只要是您家里电视机所支持的值,当然都可以作为它的参数。)。

   那位朋友说了“喂,大哥,我们可是在学习Office的VBA编程语言啊!怎么扯到电视机上去了?!”好吧,我们来谈Office。Office是一个对像,Word是一个对像,窗口是一个对像,文档是一个对像,段落、标题、一行文字、一个字符、一个标点、一个表格、一个单元格……无一不是对像!它们都有颜色、大小、宽窄、数量、位置……等等属性。我们利用VBA语言进行编程,不外乎就是为了控制某个对像的某个属性值以方便我们的工作罢了!
   对于对像、属性、方法、事件,我们先了解这么多,在实例六我们将继续对其进行学习。今天,我们先试试这些知识在窗体与控件上的运用吧!

 

一、界面制作——
   1、打开VBE,指向“插入”菜单,点击“插入用户窗体”命令(也可以在工具栏中做同样的动作。),窗体的名称默认为“UserForm1”,如图4—1。
   2、点击控件工具箱按钮,打开控件工具箱,选中工具箱中的“按钮”控件,在窗体上“画”出一个按钮控件(“按钮控件”就是控件工具箱中的那个方形的小块。),按钮的名称默认为“CommandButton1”。





二、属性赋值方法之一:
注意,下面进入今天的关键知识点:
   1、首先,双击做好的窗体或按钮,就会打开代码窗口。保证光标在窗体或按钮代码的正中间,按下F5键运行它,或在“运行”菜单中选择“运行用户窗体或子过程”命令运行它,看看效果。如图4-2左面。

 

 


   这里需要注意两点:A、如果光标不在代码中间,而您的模块中又还存在其它的代码的话,运行时,VBE会让您选择要运行的宏名称;B、如果工程被锁定而不能运行的话,首先请在“工具——宏——安全性”对话框中把安全性设为“低”,然后删除VBE中所有存在的代码,并关闭Word,等一下再重新启动,重新开始本步的操作。当然,如果您VBE中以前的代码需要保存的话,最好把它剪切到其它文本中去,要用时再复制过来。最后,千万记得在本实例完成之后,把“安全性”改回为高,以避免宏病毒。
   2、右击按钮CommandButton1,选“属性”,(如果“属性”对话框本来就的打开的,则选中按钮CommandButton1,然后直接修改属性就行了。)在“属性”对话框中选“Caption”,在右面的属性值中输入“开始运行”。保存后,再次运行,看看与第1步运行时相比,效果有什么不同?对,按钮上面的提示文字已经改变成“开始运行”了。对比效果如图4-2。
   以上这两个步骤中,需要我们应该掌握的知识就是“怎样在属性对话框中,对控件的属性进行赋值”。下面,我们还要为控件的属性赋值,但赋值的方法有所不同,请注意体会以下赋值方法与上面的区别。

三、属性赋值方法之二——
   请撤消前面添加“开始运行”属性的操作,回到按钮表面提示文字仍然是“CommandButton1”时的状态,双击“CommandButton1”将打开“CommandButton1”的代码窗口,代码窗口已为我们生成了控件被单击时的空过程。现在,我们就在这个“CommandButton1”的Click事件(即按钮被单击的事件)空过程中,添加如下的代码:
’’’========用代码修改属性========
Private Sub CommandButton1_Click()
CommandButton1.Caption = "开始运行"
End Sub

 

   本实例之初,我们学习了为对像的属性赋值的格式,那么,您看到代码“CommandButton1.Caption ="开始运行"”时,应该不难理解吧?代码中的CommandButton1是指窗体上的那个按钮,如果有多个按钮的话,就会分别被命名为CommandButton2、CommandButton3……等等。如果要解释上面的程序,就应该是:当按钮被“Click”(单击)时,按钮的“Caption”(提示文字)就被改变为“开始运行”。
   运行本程序并单击按钮看看出现了什么效果?在按钮被单击前,运行的效果与第1步一样(与图4-2左面相同。);当按钮被单后,是不是与第2步运行时的情况一样?(与图4-2右面相同。)
   第2步中,我们是“先设计好了”按钮的提示文字再运行;第3步中,我们根本没有“设计”按钮的提示文字,而是已经“在窗体运行的时候”利用了按钮的单击事件,改变了按钮表面的提示文字。对于第2步中的做法,我们称之为“设计时”修改控件,对于第三步中的做法,我们称之为“运行时”修改控件。
    “设计时”修改控件的属性虽然更方便、更容量掌握,但它往往没有“运行时”修改控件属性那么灵活。下面我们再做一个例子,动态改变按钮与窗体的属性值。再体会体会“运行时”修改属性值的灵活性。将前面的代码修改如下:
‘==========利用单击按钮事件,动态改变按钮名与窗体颜色===========
Private Sub CommandButton1_Click()
If CommandButton1.Caption = "CommandButton1" Then
CommandButton1.Caption = "开始运行"
ElseIf CommandButton1.Caption = "开始运行" Then
CommandButton1.Caption = "点我干嘛,别烦我!"
ElseIf CommandButton1.Caption = "点我干嘛,别烦我!" Then
UserForm1.BackColor = RGB(255, 128, 128)
CommandButton1.Caption = "想让我给你点颜色吗?"
ElseIf CommandButton1.Caption = "想让我给你点颜色吗?" Then
UserForm1.BackColor = RGB(0, 128, 64)
CommandButton1.Caption = "你真的不怕我变脸吗?"
ElseIf CommandButton1.Caption = "你真的不怕我变脸吗?" Then
UserForm1.BackColor = RGB(128, 0, 255)
CommandButton1.Caption = "怕了你了,我逃!"
Else: CommandButton1.Caption = "怕了你了,我逃!"
Unload UserForm1’“Unload”是窗体的一个方法,其作用是卸载窗体。
End If
End Sub

   本程序中用到了窗体的颜色属性(BackColor)及其属性值(RGB)的知识,我们在利用VBA对Word中的文字进行修饰时,经常会用到颜色属性及其值的设置,这里正好学习一下。代码最后的“Unload”是窗体的一个方法,其作用是卸载窗体,与平时我们关闭窗体时按右上角最大、最小化按钮那里的“X”按钮等价。有卸载就有加载,加载并显示窗体的命令是“Show”,该命令的使用格式是“窗体名.Show”。

 

本实例的知识扩展:
   1、朋友们在“设计时”属性设置中,下点功夫摸索摸索,尽快熟悉窗体、按钮的各种属性;
   2、本例只用到了“控件工具箱”中的按钮控件,其它的控件虽然在作用上各不相同,但在使用的方法上与按钮控件没有什么大的区别,朋友们就自己尝试一下其它的控件吧;
   3、请您制作一个窗体,上面加上两个按钮,一个按钮运行实例三中的游戏,另一个按钮退出游戏。

 

   实例四到此结束,怎么样,有收获吗?下一个实例“Word版的媒体播放器”,将是我们前面知识的一个集中练习,也将是一个会让您很有“成就感”的练习。还等得及吗?——

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
文本框控件的主要属性
常用的表单控件
Visual Basic中轻松打造绚丽按钮
][计算机]Visual Basic的基本知识
计算机技术基础(第二章 VisualBasic简介)
vb6.0怎么制作一个抽奖小程序? vb6.0抽奖器的制作方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服