delphi动态创建了一个TEdit数组但是运行时看不到,求高人
procedure TForm1.FormCreate(Sender:TObject);
var
i:integer;
begin
SetLength(a,200);
for i:=0 to 199 do begin
a[i]:=TEdit.Create(Self);
a[i].Visible:=True;
a[i].Parent:=Form1;
a[i].AutoSize:=False;
a[i].ReadOnly:=True;
a[i].Width:=ClientWidth div 20;
a[i].Height:=(ClientHeight-Button1.Height - 20) div 20;
a[i].Top:=(i div 20)*a[i].Height;
a[i].Left:=(i mod 20)*a[i].Width;
a[i].Text:=IntToStr(i+1);
end;
Button1.Top:=ClientHeight - Button1.Height -10;
Button1.Left:=ClientWidth - Button1.Width - 10;
end;
a:=array of TEdit 已经声明
追问:对,就应该是这样的,但是我为什么只有一个button...
能说下可能的问题吗?重装了还是不行啊...囧死
其他:你把代码按如下修改一下,就行了
procedure TForm1.FormCreate(Sender: TObject);
var
i:integer;
A:array[0..199] of TEdit;
begin
for i:=0 to 199 do begin
a[i]:=TEdit.Create(self);
a[i].Visible:=True;
a[i].Parent:=Form1;
a[i].AutoSize:=False;
a[i].ReadOnly:=True;
a[i].Width:=ClientWidth div 20;
a[i].Height:=(ClientHeight-20) div 20;
a[i].Top:=(i div 20)*a[i].Height;
a[i].Left:=(i mod 20)*a[i].Width;
a[i].Text:=IntToStr(i+1);
end;
end;
A当然也可以定义为全局变量。 加一句
a[i].Show;
上一个:delphi中如何对一段pchar空间转换成整型值。
下一个:木马和病毒用DELPHI编写容易吗?其它方面DEL语言是不是过时了?