在窗体模块中的private中定义了一个全局数组,在一个treeview的exit事件中给它定义了长度和赋值(这部分会先执行的,并且成功执行) 然后在另外一个事件中再去引用这个全局数组的元素时报错调试length(数组名)=0
high(数组名)=-1,我觉得我见鬼了难道其他过程中就不可以访问该全局数组??
我放到public上,结果还是一样
high(数组名)=-1,我觉得我见鬼了难道其他过程中就不可以访问该全局数组??
我放到public上,结果还是一样
TForm1 = class(TForm)
TreeView1: TTreeView;
Button1: TButton;
procedure TreeView1Exit(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
FArr: array of integer;
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.TreeView1Exit(Sender: TObject);
begin
SetLength(FArr, TTreeView(Sender).Selected.Index);
end;procedure TForm1.Button1Click(Sender: TObject);
begin
Showmessage(InttoStr(Length(FArr)));
Showmessage(InttoStr(High(FArr)));
end;procedure TForm1.FormCreate(Sender: TObject);
var I : integer;
begin
TreeView1.Items.Clear;
for I := 0 to 5 do
TreeView1.Items.Add(nil, InttoStr(I));
end;