问上一个问题 groupbox 里面有两个edit,为edit1,edit2.写代理先把groupbox .enable false   然后 edit1.enable true.问,edit1能编辑吗?
若不能
为什么会是这样子呢?比较奇怪,那如何办才是最好的?我想实现那方法,因为groupbox里可能有10个控件我总不能一个一个的写吧?

解决方案 »

  1.   

    父控件enable false了,所有子控件都会一起false掉的.不知道你想要做什么
      

  2.   

    可以通过tag属性,将需要设置为true的,tag都改成1
    然后
    for i := 0 to GroupBox1.ControlCount-1 do
      if GroupBox1.Controls[i] is TEdit then
        TEdit(GroupBox1.Controls[i]).Enabled := TEdit(GroupBox1.Controls[i]).Tag = 1;
      

  3.   

    最后哥门说的是一个好办法,统一控制,反过来思维,不错,也许可以这样子做。
    我为什么要提这问题呢?是因为。memo很多内容的,enable false后就没有办法下拉,造成后面的看不到,所以要这样子做。
    我用另外的办法处理了,把memo类的,不再放到groupbox里了,单独控制。