你的位置:创意公社- ideaer >> >> 程序开发 >> 详细内容 在线投稿

VB编程基础教程16–对象之间的关系

排行榜 打印 发给朋友 举报 发布者:rv4338
热度1083票  浏览156次 【共0条评论】【我要评论 时间:2011年2月04日 16:03
创意公社- ideaerr#A*g B2H%]/S-}

在同一窗体上放置两个命令按钮时,它们是两个具有不同 name 属性设置值(command1 和 command2)的分开的对象,但都分享同一个类— 命令按钮。创意公社- ideaer-s2a;l-g^t
它们也共享这样一个特征,即它们在同一窗体上。在本章前面已看到,窗体上的控件也包含在窗体中。这就把控件放在一个层次上。要引用控件就必须先引用窗体,就如同打电话拨号一样,首先要拨国家/地区号码或区域号码,然后再拨具体的电话号码。创意公社- ideaer.n*^ [2]\Y0r
这两个命令按钮也共享这样一个特征,即它们都是控件。所有控件都具有公共特性,使它们不同于窗体以及 visual basic 环境中的其它对象。以下章节中将说明 visual basic 如何用集合使相关的对象分组。
-znL7?;p?^1对象的层次创意公社- ideaer.to7v@'l*xV
对象层次提供了一种组织结构,它决定了对象间的相互关系以及访问它们的方法。在大多数情况下不必考虑 visual basic 对象的层次。但是:
8O:A{!jZNLH)s6z?1在操作其它应用程序的对象时,应当熟悉那个应用程序的对象层次。关于定位对象层次的信息,请参阅“用部件编程”。
*tYyH3JZ2K&d[1创意公社- ideaer/x3nAS*n$O G1o;J1o
在使用数据访问对象时,应当熟悉数据访问对象层次。就象在 professional features 一书上的《数据访问对象指南》部分描述的那样,该书包括在 visual basic 的专业版和企业版中。
S)[2j8iT x1在 visual basic 中,一个对象包含其它对象的一般情况时有发生。 下面我们要详细讨论。
$a3}_8xUE0\/u1使用对象集合创意公社- ideaer7Yr;S@cOP@
集合对象有自己的属性和方法。对象集合中的对象作为集合的成员被引用。集合中的每个成员从 0 开始顺次编号;这就是成员的索引号。例如,控件集合包含已给定窗体上的所有控件 。如果对集合中的所有对象都必须执行相同操作,则可用集合简化代码。
2R3J&^ Fp7j1创意公社- ideaer a-T{2rW
例如,下列代码遍历控件集合,并在列表框中列出每个成员的名字。
~oG;X3\1dim mycontrol as control
#Db3_{ U1for each mycontrol in form1.controls
[%^;Q{"NKM#E1   ‘把每个控件的名字送到列表框。
\5H8zb*A R?3Vj3?[1   list1.additem mycontrol.name创意公社- ideaerT w:Lb A!~ Q
next mycontrol
-l0b iv v D4_{1应用集合成员的属性与方法创意公社- ideaerd-WQ X` mTO5NZ
有两种通用方法可用来对集合对象成员寻址: 创意公社- ideaer5Q0c U A;bn
指定成员的名称。以下两个表达式等价:
4N[9v Nq(ne1controls (“list1″)创意公社- ideaersbR j V,z}4RX D G%j
controls!list1创意公社- ideaerUo@;zvAZ
利用成员的索引号:
u2_q/C9s(gH1controls (3)创意公社- ideaer m4T4J6Ci'RT9CP1QY
一旦能够从整体上对全体成员寻址,而且还能够个别地对单个成员寻址,就可用下面随便一种方式应用属性和方法:创意公社- ideaerWt1]&k~%mSX
’将 listbox 控件的 top 属性设置为 200。
|ZKV^Y1controls!list1.top = 200
BJ){&QD%Z3DY~b1-或者-
(A ]i Uy&^%w1dim mycontrol as control
KUHM X1t Q1for each mycontrol in form1.controls ()
)H4U eT2O nbLsz"i1   ‘将每一个成员的 top 属性设置为 200。
z!N(nU&{X1   mycontrol.top = 200
K\)@H ?7s}1next mycontrol
~_m5P6h pN E@7`)Kd1包含其它对象的对象
N4Zg4K.B9L[1在 visual basic 中,一些对象包含其它对象。例如,窗体通常包含一个或数个控件。把一个对象当作其它对象的容器,这样做的好处在于,在代码中引用容器即可明了要使用哪个对象。例如,在一个应用程序中可有两个不同的窗体,一个用来输入应付帐交易,另一个用来输入应收帐交易。
1iq?%p|1创意公社- ideaer-];a$Hx1ao
两个窗口可以有名为 istacctno 的列表框。通过引用包含列表框的窗体就可准确指定要使用的列表框:
rNb+ft)_7o1frmreceivable.lstacctno.additem 1201
!M:sA0NJ#Ci1-或者-
$I c H!wv1frmpayable.lstacctno.additem 1201
dzg+Lu2M J1visual basic 中的公共集合
F]t,rq` y Y1在 visual basic 中一个对象包含其它对象的一般情况时有发生。下表简要叙述 visual basic 中最常用的集合。
fyD cKkE&g Z1集合 描述 创意公社- ideaerY5fzZ }#p N
forms 包含载入的窗体。
%_)snr ts8n0V1p#j1controls 包含窗体上的控件。 创意公社- ideaer!j_5P3_o{p T
printers 包含可用的打印机对象。 创意公社- ideaertH5H` | R
创意公社- ideaer][1S9aHs+} iV5f
在 visual basic 中也可实现对象控制。
k0L,[3Zu4]1详细信息 关于对象容器的详细信息,请参阅“再论编程”中的“使用集合替代数组”。关于打印机集合的信息,参阅“使用文本和图形”。关于窗体集合和控件集合的详细信息,请参阅语言参考。创意公社- ideaer7G&Oa]_8o \zz-l
容器属性创意公社- ideaerNeDIn+\
在窗体内,可用 container 属性改变对象的容器。以下控件可包含其它控件:
@)t%a |!tA s8dx1frame 控件创意公社- ideaerUuNdv"}A K!b

grF%sGg1picturebox 控件创意公社- ideaerb JMrX'~#~1c

W:E!RI A9q/Y.Z(`1toolbar 控件(仅对专业版和企业版而言)
n S3W$C,Q\1如何在窗体上将命令按钮从一个容器移动到另一个容器,该例对此作了演示。打开新工程,并在窗体上画出 frame 控件、picturebox 控件和 commandbutton 控件。创意公社- ideaer _!b/UFn'mfV'hL/NP
下列代码在窗体单击事件中,这些代码使计数器变量增加,并通过 select case 循环使命令按钮在容器之间移动。
-J3c-i?:U1private sub form_click ()
r-v'uY-ZFFq1   static intx as integer
,v'MltiO C]1   select case intx创意公社- ideaer'H att Q*S
      case 0创意公社- ideaerr?%e?})Bb2Y
      set command1.container = picture1
wNzlD,R+^B*W1      command1.top= 0创意公社- ideaer3r?aV1V'd{S5a2i
      command1.left= 0创意公社- ideaer2TjEu(i%SS3ed!q
      case 1创意公社- ideaer$W0BdOk2KB+E
      set command1.container = frame1创意公社- ideaer;KUQH!CH ],@KP
      command1.top= 0创意公社- ideaer"@He9D;H A
      command1.left= 0创意公社- ideaer]N{'~ FcXHH({M:C
      case 2创意公社- ideaer g]$g9{@z
      set command1.container = form1
%nE t-qQk e%w \1      command1.top= 0创意公社- ideaer{)K-U6QV2Rx
      command1.left= 0
C)loY7nN6j+X]6u4b`;x1   end select
c/v)_%{s'Z.uU1   intx = intx + 1
cWo$_ [F5jAj1end sub
w;H)`K.{RSY F1详细信息 请参阅语言参考中的“container 属性”。创意公社- ideaeruz2npE&^B!gY
对象之间的通讯创意公社- ideaere:g;BF,E-U p
除了在 visual basic 中使用和创建对象外,还可与其它应用程序通讯并在自己的应用程序中操作其它应用程序的对象。在应用程序之间共享数据的能力是 microsoft windows 操作系统的关键性能之一。有了 visual basic,与其它应用程序进行通讯变得极为灵活。创意公社- ideaer~s;c\~.uUu6k
详细信息 关于使用其它应用程序的对象及其通讯的详细信息,请参阅“用部件编程”。
E2E*f ` n`d/Z7b1创意公社- ideaer3p9e'HPof\0C

顶:41 踩:78
对本文中的事件或人物打分:
当前平均分:-0.76 (353次打分)
对本篇资讯内容的质量打分:
当前平均分:-0.45 (283次打分)
【已经有328人表态】
69票
感动
32票
路过
34票
高兴
33票
难过
35票
搞笑
38票
愤怒
40票
无聊
47票
同情
上一篇 下一篇
发表评论
换一张

网友评论仅供网友表达个人看法,并不表明本网同意其观点或证实其描述。

查看全部回复【已有0位网友发表了看法】