VB COM基础讲座之添加属性和方法

原创 2004年11月02日 09:49:00
下面,我们添加一个属性来让用户获取CustomerID字段的值,其相应的示例代码如下:

  Public Property Get CustomerID() As String
   CustomerID = rs("CustomerID")
  End Property

  Public Property Let CustomerID(NewValue As String)
   rs("CustomerID") = NewValue
  End Property
 显然,该属性的Get操作只是简单地返回"CustomerID"字段的值,相应地,Let操作是将"CustomerID"字段设置一个新值。

  换句话说,属性中有两个部分:"getting"和"letting",事实上可能还有另外一个"setting"操作。但对于不同场合来说,我们总需要Get和Let来进行读和写的操作。

  这里所引起注意的是,在上述属性过程中,应该对某些值进行必要的检测。例如,在调用Let属性时,用户可能有如下操作:

  ObjectName.CustomerID = "HALFI"

  该Let属性操作后,"CustomerID"等于新的字符串"HALFI"。但当查看Northwind数据库内容时,我们会发现"CustomerID"字段的字符长度不能超过5。如果用户有这样的操作:

  ObjectName.CustomerID = "HALFISTORE"

  则出现数据库操作错误。虽然,可以通过错误句柄来处理这个问题,但是如果能在代码中检测NewValue的长度岂不更好?如果该值超过5个字符,我们既可以通过裁剪取共前5个字符,也可以忽略这个新的字符串而弹出一个错误提示。但这里,我们采用后一种措施。

  在我们的类中添加下列代码:

  Public Property Get CustomerID() As String
   CustomerID = rs("CustomerID")
  End Property
  Public Property Let CustomerID(NewValue As String)
   'If the length of NewValue is greater than five
   If Len(NewValue) > 5 Then
    '... then raise an error to the program
    'using this class
    Err.Raise vbObjectError + 1, "CustomerID", _"Customer ID can only be up to five " & _"characters long!"
   Else
    '... otherwise, change the field value
    rs("CustomerID") = NewValue
   End If
  End Property

  好了,在完成下列步骤之前,我们已经为添加方法花费了不少时间。

  在我们的类中添加下列代码:

  Public Sub Update()
   rs.Update
  End Sub

  该Update方法只是简单地调用记录集对象的Update方法来更新记录。

  下一步,我们将用一个很小的样例程序来测试这个属性和方法,在测试时还将使用特定的技巧来追踪类和程序的运行。

VB COM基础讲座之可重用性

  还记得我们是怎么将一个类添加到标准的Visual Basic工程中的?   是的,一流的COM体系的最大特点是其代码的可重用性。换句话说,如果用Visual Basic创建一个用于财务管理的类,那...
  • naive1010
  • naive1010
  • 2004年11月02日 09:08
  • 843

亚马逊AWS在线系列讲座——第1讲:云计算和AWS入门

亚马逊AWS在线讲座将围绕AWS云平台的各种服务分不同的主题对AWS服务进行系统介绍。AWS在线讲座系列会由浅入深帮助刚开始接触AWS的用户了解各种AWS云服务,达到快速上手进行实际应用的目的。 第一...
  • u012365585
  • u012365585
  • 2014年04月30日 10:53
  • 5383

获取com对象的所有属性和方法

package com.bovy.officehelper; import org.eclipse.swt.SWT; import org.eclipse.swt.SWTException; ...
  • KimmKing
  • KimmKing
  • 2008年06月12日 15:00
  • 3496

VB COM基础讲座之创建第一个COM对象

让我们直接来开始创建第一个真正的COM对象,它将被用于那些ActiveX程序中。  具体步骤如下: 启动Visual Basic;  我们将看到一个"New Project"对话框,其中有几个与Act...
  • naive1010
  • naive1010
  • 2004年11月02日 09:32
  • 841

vb.net 封装 组件 成 com的方法

  前几天一直在研究如何将.net的组件封装成com供非托管代码调用。上网查资料,查书,试验,最后测试了vb.net,c#,vc++.net 等多种语言,都没有搞定。在论坛上发了帖子。虽然有回复,但是...
  • precipitant
  • precipitant
  • 2007年09月07日 11:35
  • 4097

prototype 属性使您有能力向对象添加属性和方法。

定义和用法 prototype 属性使您有能力向对象添加属性和方法。 语法 object.prototype.name=value 实例 在本例中,我们将展示如何使用 p...
  • yzbben
  • yzbben
  • 2017年05月18日 11:43
  • 309

Visual Basic COM基础讲座之(一)

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

如何用VB6写COM组件

   所幸的是,我们可以用COM组件来在最大程度上扩展ASP的功能。你可知道,任何可以用诸如VB,VC和VJ以及其它的一些程序语言所写出来的东西,都可以被应用到你的网站的开发中去,这就是COM(组件对...
  • jevylau
  • jevylau
  • 2007年02月25日 09:30
  • 546

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
  • 752
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:VB COM基础讲座之添加属性和方法
举报原因:
原因补充:

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