首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

怎么取得当前焦点控件数组的最大上标

2012-12-26 
如何取得当前焦点控件数组的最大下标UBound(Me.ActiveControl)提示“缺少数组”Me.ActiveControl.UBound 提

如何取得当前焦点控件数组的最大下标
UBound(Me.ActiveControl)提示“缺少数组”

Me.ActiveControl.UBound 提示“对象不支持该属性或方法”
[最优解释]

枚举。
[其他解释]
Private Function GetActiveCtrlUbound() As Integer
    Dim x As VB.Control
    Dim MaxIndex  As Integer
    
    For Each x In Me.Controls
        If VBA.VarType(VBA.CallByName(Me, x.Name, VbGet)) = vbObject Then '控件数组
            If x.Name = Me.ActiveControl.Name Then
              If MaxIndex < x.Index Then MaxIndex = x.Index
            End If
        End If
    Next
    GetActiveCtrlUbound = MaxIndex
End Function
[其他解释]

引用:
Private Function GetActiveCtrlUbound() As Integer
    Dim x As VB.Control
    Dim MaxIndex  As Integer
    
    For Each x In Me.Controls
        If VBA.VarType(VBA.CallByName(Me, x.Name, VbGet)……

顶哦
[其他解释]
引用:
Private Function GetActiveCtrlUbound() As Integer
  Dim x As VB.Control
  Dim MaxIndex As Integer
   
  For Each x In Me.Controls
  If VBA.VarType(VBA.CallByName(Me, x.Name, VbGet)) = vbObject Th……


谢谢,虽然For Each比较耗资源,但好像也没更好的办法了。

热点排行