• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

Visual Basic COM基础讲座之属性

发布: 2007-6-21 21:57 | 作者: ADDING编译  | 来源: 天极网  | 查看: 15次 | 进入软件测试论坛讨论

领测软件测试网

   


  属性操作很像公共变量,但属性还有更多的控制。

  常用属性通常包括"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"是怎样运行的?

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

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网