如何动态地生成一组按钮,按钮的数量不定,可能是3个,也可能是5个或是更多;谢谢

解决方案 »

  1.   

    var
      i, j: integer;
    begin
      i := 10;
      j := 10
      with TButton.Create(Self) do
      begin
        Parent := Self;
        Left := i;
        Top := j;
        Right := i + 80;
        Bottom := j + 22;
        Caption := '哈哈' + IntToStr(i);
        i := i + 100;
      end;
    end;
      

  2.   

    create 
    left top width height parent...
    show.不过记得最后最好手工释放。。不知道其parent form会不会自动释放这些
    我没测试过。。
      

  3.   

    如果Create的时候传入了Form,即通常的Create(Self),[Self 指该Form],则Form会释放的
      

  4.   

    谢谢各位,顺便再问一个,如果这些按钮中的某一个被destory掉了,怎样让后面的其他按钮自动补到它的位置上来呢?否则的话窗体上就会有一段空白的区域了,谢谢
      

  5.   


    問題太多, 分太少!不過 zwjchina(蒲石)的作法可能滿足你的部分需求, 如果要實現你的第二個問題,
    在不釋放原有創建的對象前提下, 可以寫代碼控制button的位置.