|
网站首页
|
模板
|
资料
|
源码
|
工具
|
开发
|
设计
|
安全
|
项目
|
网络
|
图片
|
系统
|
数据库
|
博客
|
会员中心
|
小说
|
网络学院
学习资料
源码模版
您现在的位置:
精品下载
>>
开发
>>
VB
>> 文章正文
用户登录
新用户注册
Visual Basic COM基础讲座之属性
【字体:
小
大
】
Visual Basic COM基础讲座之属性
作者:佚名 文章来源:不详 点击数: 更新时间:2007-8-30
属性操作很像公共变量,但属性还有更多的控制。
常用属性通常包括"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"是怎样运行的?
在下一节中,我们不仅要讨论使用更多属性的方式,而且还讨论如何随意创建它们。
文章录入:chqnet 责任编辑:chqnet
上一篇文章:
Visual Basic COM基础之更多属性
下一篇文章:
Visual Basic COM基础讲座之类的建立
【
发表评论
】【
加入收藏
】【
告诉好友
】【
打印此文
】【
关闭窗口
】
最新热点
最新推荐
相关文章
实例分析CSS属性Display与Vi
内嵌滚动条(windows UpDate风
HTML Form issue
内嵌滚动条(windows UpDate风
Sun联合Genuitec推出GUI工具
Sun发布NetBeans IDE/BlueJ
Application Access Violati
References and Aliases are
Curtis Fuller - Sliding Ea
register_globals使用详解
网友评论:
(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
|
设为首页
|
加入收藏
|
联系站长
|
友情链接
|
版权申明
|
在线技术支持:QQ:9296258 MYFTP资料来自网络,免费提供给网民学习。如本站侵犯了您的版权,请与我们联系。
MYFTP 版权所有 Copyright© 2004-2008 站长:
chengq