有人可以帮忙写一个 所有同类名的窗口 隐藏/显示的吗 就是2个或2个以上 同类名相同的窗口 达到隐藏/显示窗口

解决方案 »

  1.   

    FindWindow查找,装入数组,依次调用ShowWindow(SW_HIDE)
      

  2.   

    Private Type clsType
            cName As String
            cVisible As Boolean
    End TypePrivate Function setCtrlVisible() '显示/隐藏物件(以最初寻获物件为准)
      Dim iCtl As Control, iCls() As clsType
      Dim i As Integer
      
      ReDim iCls(0)
      For Each iCtl In Controls
          iCls(0).cName = TypeName(iCtl) '取得CTRL名称
          For i = 1 To UBound(iCls)
              If iCls(i).cName = iCls(0).cName Then
                 iCtl.Visible = iCls(i).cVisible
                 Exit For 'i
              End If
          Next 'i
          If i > UBound(iCls) Then '未寻获
             ReDim Preserve iCls(UBound(iCls) + 1)      '加入CTRL
             iCls(UBound(iCls)).cName = iCls(0).cName   '新增名称
             iCtl.Visible = Not iCtl.Visible            '最初物件反向显示
             iCls(UBound(iCls)).cVisible = iCtl.Visible '纪录显示状态
          End If
      Next 'iCls
    End Function
      

  3.   

    在forms集合里遍历每一个窗体,
    用typename得到每个窗体的类名
    类名如果等于指定的字符串,就显示/隐藏