当前位置:编程学习 > Delphi >>

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语言是不是过时了?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,