现在我的程序在运行时只要Cancel按钮有用,其它都无效。运行结束后,其它有效,Cancel无效。难道要一个一个去设定按钮的enable吗?有什么简便方法吗?求教各位大侠了,小弟谢过先。

解决方案 »

  1.   

    Private Sub Command1_Click()
    Dim a As Control
    For Each a In Me.Controls
        a.Enabled = False'历遍窗体中所有控件,将所有控件的Enabled 设置为False
    Next
    Command1.Enabled = True'最后将你想要设置为True的控件设置为True就可以了
    End Sub
      

  2.   

    我以前也问过类似的问题,后来有人告诉我的用法和 tztz520(午夜逛街) 的差不多!我用了。
    这方法很好,很好理解,用起来也很简单
      

  3.   

    有的控件没ENABLE属性怎么办?
      

  4.   

    加上一句:
    On Error Resume Next 
    忽略就行了!Private Sub Command1_Click()
           Dim a As Control
           '*************
           On Error Resume Next
           '*************
           For Each a In Me.Controls
               a.Enabled = False
           Next
           Command1.Enabled = 
    End Sub
      

  5.   

    是的,一定要加上错误捕获语句,要知道并不是所有控件都支持Enabled属性,除非你确信在你的窗体上的所有控件都支持Enabled属性。
      

  6.   

    或者使用TypeName函数判断控件的类型,再设置属性也可以Private Sub Command1_Click()    Dim a As Control
        For Each a In Me.Controls
            If TypeName(a) = "CommandButton" Then
                a.Enable=False
            End If
        Next
        
    End Sub