比如:有多个text控件,需要同时激活和失效,是不是可以用一种简单的方法来实现对他们的同时引用呢?

解决方案 »

  1.   

    '建立一个Text控件数组,然后照下面的代码来
    Dim i As Long
    For i = 0 To Text1.Count - 1
        Text(i).Enabled = False
    Next i
      

  2.   

    呵呵,我各个控件的名称是不一样的,不好用控件数组
    如果吧名字取成一样的又无法很直观的辨识各个textbox的数据域
    枚举可以列举控件吗?还是只能用常数?
      

  3.   

    用循环:
    dim otext as control
    for each otext in me.controls
       if typeof otext is textbox then
          otext.enabled = True ' False类似。
       end if
    next otext
      

  4.   

    '假设有N个TextBox,分别是txtName,txtPass,txtAge.......
    Dim a As Control
    For Each a In Controls
        If Left(a.Name, 3) = "txt" Then a.Enabled = False
        ' 注意一下大小写,也可以通过别的方式判断,但Text一般都应该以txt为前缀
    Next
      

  5.   

    看到了,qingming81(晴明)的方法比我的好。
      

  6.   

    如果你控件调用的程序多,或者是不同的FORM上都有,就建立一个模块调用吧
    Public Sub Sel(ByVal vObject As TextBox, Button As Integer, Shift As Integer, X As Single, Y As Single)
        vObject.enabled=false '这里写你的程序
    End Sub
    然后再你需要的控件处调用
    call SEL就可以了