用VB能不能枚举一个窗体里所有控件呢?

用VB能不能枚举一个窗体里所有控件呢?... 用VB能不能枚举一个窗体里所有控件呢? 展开
 我来答
最美乡村行
2012-02-08 · TA获得超过1136个赞
知道大有可为答主
回答量:1191
采纳率:0%
帮助的人:1627万
展开全部
Private Sub Form_Load()
a = Controls.Count
End Sub
上面的是返回窗口的容器的个数

Controls(n)的方法得到具体的控件

msdn帮助的内容
Controls集合

一个集合,其元素代表部件中的控件。 Controls集合的Count属性用于表明集合中的控件数量,而其Item方法则返回集合中的一个成员。

语法

object.Controls.Count

object.Controls(index)

Controls 集合的语法包括下述部分:

部分 描述
Object 一个对象表达式,其值为“应用于”列表中的对象。
Index 一个整数,范围从0到Controls.Count – 1。

注意 如果部件是一个Visual Basic模块,如Form或UserControl,则在模块中编写代码时不必使用该对象表达式。然而,如果容器是一个编译后的ActiveX控件,如ToolBar控件,则必须使用该对象表达式。

说明

Controls集合枚举部件中装入的控件,可用于对这些控件的遍历。例如,可以用来改变一个Form中所有Label控件的BackColor属性。

Controls集合标识了一个内在的名为Controls的窗体级变量。如果省略了可选的object 占位符,则必须包括Controls关键字。不过,如果包括了object,则可以省略Controls关键字。例如,下面两行代码具有相同的作用:

MyForm.Controls(6).Top = MyForm.Controls(5).Top + increment
MyForm(6).Top = MyForm(5).Top + increment

可以将Controls(index)传递给一个参数指定为Controls类的函数。也可以使用它们的名称来访问成员。例如:

Controls("Command1").Top

可以在If语句中使用 TypeOf关键字,或使用TypeName函数来确定Controls集合中控件的类型。

注意 Controls 集合不是Visual Basic Collection类的成员。其属性和方法的集合要小于Collection对象的属性和方法的集合,而且用户不能创建该集合的实例。
百度网友bdb9803
2012-02-08 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:53%
帮助的人:1亿
展开全部
可以,代码如下:

Dim a As Control
For Each a In Me.Controls
Debug.Print a.Name
Next
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友ba88284
2012-02-12 · TA获得超过1521个赞
知道大有可为答主
回答量:1822
采纳率:73%
帮助的人:571万
展开全部
可以这样:
Dim obj As Object
For each obj in Me
'You dealling code
next obj
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式