在窗体的左边有两个按钮,当我按下其中的一个按钮时,右边的就显示出4个按钮.当按下左边的另一个按钮时右边的同样位置又显示出另外的4个按钮.??
请大虾们给小弟指引一下,小弟感激不尽.

解决方案 »

  1.   

    建议右边使用 TNotebook (win3.1中)控件,分两页装4个按钮
      

  2.   

    成堆建立
    procedure TForm1.Button1Click(Sender: TObject);
    var e:array [0..3] of TButton;
    I:Integer;
    begin
    for i := 0 to 3 do
    begin
    e[i]:=TButton.Create(Self);
    e[i].Left :=20;
    e[i].Top :=20+i*30;
    e[i].Parent :=self;
    end;end;
      

  3.   

    不要的时候
    procedure TForm1.Button2Click(Sender: TObject);
    var
    I:Integer;
    begin
    for i := 0 to 3 do
      e[i].Free;end;
      

  4.   

    To:kaguo(▲) Guozhi(★★★★★) 
    那先前显示的按钮要怎样把它清掉呢???
    多多指点.
      

  5.   

    var e:array [0..3] of TButton;
    放在
      TForm1 = class(TForm)
        Button1: TButton;
        ADOQuery1: TADOQuery;
        ADOQuery1aa: TStringField;
        Button2: TButton;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
      private
        { Private declarations }
        e:array [0..3] of TButton;//这里
      public
        { Public declarations }
      end;
      

  6.   

    我想是这样的,你在右边只需要放四个按钮,按左边第一个和第二个按钮时,右边只是Caption或其它属性变化一下,然后在按钮事件中可以按这些属性(比如Caption)再加以区分,执行不同的流程。
      

  7.   

    TO:kaguo(▲) Guozhi(★★★★★)
    那要不要把E[i]设为全局啊.???
      

  8.   

    那先前显示的按钮要怎样把它清掉呢???
    ----------------
    上边你题问的楼上,我刚回答e[i].Free;