各位:
  有Edit1,Edit2,Edit3,Edit4,Edit5,Edit6,Edit7,Edit8,对各edit赋为空值时:如何使得不用edit1.text:='',edit2.text:='',...edit8.text:=''.而是用数组的形式来实现。

解决方案 »

  1.   

    var
      MyEdit: array[1..8] of TEdit;----------
     for i:= 0 to 7 do
      begin
        MyEdit[i]:=TEdit.create(nil);
        MyEdit[i].parent := Form1;
        ...
        MyEdit[i].text := ''
      end;
      

  2.   

    sorry ,应该是
    for i:=1 to 8 do
      ...
      

  3.   

    for i:=0 to componetcount-1 do 
    begin
     if componets[i] is TEdit then
       tEdit(Componets[i]).Text:='';
    end;
      

  4.   

    Sorry,代码我是随手敲的,有个参数错误,现重新给你代码
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;  MyEdit: array[1..8] of TEdit;
    implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    var
      i: integer;
    begin
     for i:= 1 to 8 do
      begin
        MyEdit[i]:=TEdit.create(form1);
        MyEdit[i].Parent:=Form1;
        MyEdit[i].Top:=i*20;
        MyEdit[i].Left:=i*20;
        MyEdit[i].Height:=20;
        MyEdit[i].Width:=20;
        MyEdit[i].text :=IntToStr(i);
      end;
    end;end.