Visual Basic COM基础讲座之属性

原创 2004年11月02日 08:43:00
属性操作很像公共变量,但属性还有更多的控制。

  常用属性通常包括"Get(获取)"和"Let(设置)"两种。这两项操作能规定一个主要属性,就像下面的代码片段:
  Private intAge As Integer
   Public Property Get Age() As Integer
   Age = intAge
  End Property

  Public Property Let Age(ByVal vNewValue As Integer)
   intAge = vNewValue
  End Property

  上述代码的工作方式极像Age变量的操作。当像下面语句操作变量时,

MyDog.Age = 4

  就好比运行Let属性,并将4赋给vNewValue。当像下面语句操作变量时,

MsgBox MyDog.Age

  是获取属性,就好比运行Get属性,并将相应的值由intAge返回。因此,我们可以这样认为:

  所谓Get属性,就是运行后获取某个值;

  所谓Let属性,就是运行后让某个属性等于某个值;

  但至此为止,我们仅仅说明属性工作方式与标准变量极为相似,还没有来得及对属性进行更多的控制。所以,下面就来讨论。

  打开上一节的工程,对CDog类进行如下修改:

  从CDog类中去掉Age变量;

  添加下列代码:
  FACE="Courier" SIZE=2>

  Private intAge As Integer
  Public Property Get Age() As Integer
   Age = intAge
  End Property

  Public Property Let Age(ByVal vNewValue As Integer)
   If vNewValue <= 50 Then
    intAge = vNewValue
   End If
  End Property

  与前面的代码相比,这里只是对Let属性代码作稍加修改。下面对其作小小的测试,假想用户试图想使:

MyDog.Age=30
  
  也就是运行Let属性,使vNewValue等于30。代码中,还检测vNewValue是否小于或等于50。显然,30是符合要求的,因此实例中的intAge值等于30。但如果超过50,则什么也不会发生,属性退出且没有任何赋值。当然,我们也可以对此给出相应的错误代码或是显示一个提示对话框。

  切换到Form1后面的代码窗口;

  在设置Age属性代码处的第一行语句中单击鼠标,并按F9;

  MyDog.Age = 4

  在获取Age属性代码处的第一行语句中单击鼠标,并按F9;

  MsgBox MyDog.Name & " is " & MyDog.Age & " years old"

  现在让我们测试一下:

  按F5运行程序;

  单击Command按钮;

  代码应该中断在按F9添加的断点的代码行上。

  当代码中断后,按F8单步运行并观察结果;

  现在明白它们是怎样工作的吗?注意Age属性的"get"和"let"是怎样运行的?

  在下一节中,我们不仅要讨论使用更多属性的方式,而且还讨论如何随意创建它们。

Visual Basic COM基础讲座之简介

"世上无难事,只要肯登攀",所以你要有信心成为一个COM程序员,而且你一定能。   事实上,我们每次设置文本编程控件的Text属性时,就已经在使用COM,同样在DAO数据控件运行MoveNext方法时...
  • naive1010
  • naive1010
  • 2004年11月02日 08:35
  • 876

Visual Basic COM基础讲座之(二)

VB COM基础讲座之可重用性 还记得我们是怎么将一个类添加到标准的Visual Basic工程中的?   是的,一流的COM体系的最大特点是其代码的可重用性。  换句话说,如果用Visual Bas...
  • guyehanxinlei
  • guyehanxinlei
  • 2007年04月13日 17:12
  • 751

Visual Basic COM基础讲座之兼容性

在本教程第二部分的最后,我们遇到一个小问题,但确切地说,那实际上是一个大问题。如果有时间的话,这个问题应该值得我们花大精力去研究。  还记得我们是怎样遇到那个问题吗?当时,我们先编译ActiveX D...
  • naive1010
  • naive1010
  • 2004年11月02日 09:54
  • 892

Visual Basic COM基础讲座之

简介   首先,COM是一种通信的方式。 例如,就像我们的电视遥控一样。当我们按下某个频道按钮时,电视频道立马切换;而当我们按下开关按钮时,电视立即关闭等等。其实,我们并不关心它们是怎样工作的,我们只...
  • yiyiyicz
  • yiyiyicz
  • 2013年09月14日 19:29
  • 744

Visual Basic COM基础讲座之(四)

VB COM基础讲座之编译的实例选项  在测试文件组件之前,我们必须先编译它。但在进行这项工作之前,让我们先来浏览一下Visual Basic所给出来的一些额外选项。  在打开FileCheck代码窗...
  • guyehanxinlei
  • guyehanxinlei
  • 2007年04月13日 17:20
  • 511

Visual Basic COM基础讲座之事件

 相对来说,事件的使用是比较简单的。在使用前,我们必须先定义该事件,这就意味着通知Visual Basic什么事件被调用。一个事件可能有自己的参数,例如,一个Command按钮有一个Click(单击)...
  • naive1010
  • naive1010
  • 2004年11月02日 08:57
  • 713

Visual Basic COM基础讲座之(一)

Visual Basic COM基础讲座之简介 "世上无难事,只要肯登攀",所以你要有信心成为一个COM程序员,而且你一定能。   事实上,我们每次设置文本编程控件的Text属性时,就已经在使用COM...
  • guyehanxinlei
  • guyehanxinlei
  • 2007年04月13日 17:09
  • 1061

Visual Basic COM基础讲座之(三)

 VB COM基础讲座之建立测试程序 这里我们直接创建一个应用程序来测试一下前面生成的ActiveX EXE文件监视组件:   新建一个"Standard EXE"工程;下面需要添加一个引用到我们的新...
  • guyehanxinlei
  • guyehanxinlei
  • 2007年04月13日 17:17
  • 685

Visual Basic COM基础之更多属性

 有时候,为了更好地处理类往往需更多的属性。例如,假如你有四种不同的客户群:集团、较大、较小和新的客户类型,或者一个用于搜索的类中有三种不同的搜索方式:软盘、硬盘和网络。那么,能不能最好从选项列表中选...
  • naive1010
  • naive1010
  • 2004年11月02日 08:47
  • 948

Visual Basic 基本控件属性说明之一二

Label控件Label 控件主要用于在窗体中显示提示信息,常与Text控件一起使用。 属性: Caption 表示标签的内容。例:Label1.Caption="N&ame:"控件在窗体中显示Nam...
  • qvbhdnvto
  • qvbhdnvto
  • 2007年04月20日 17:12
  • 1644
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Visual Basic COM基础讲座之属性
举报原因:
原因补充:

(最多只允许输入30个字)