uses jpeg;
var j1,j2:Tjpegimage;
procedure TForm1.Button1Click(Sender: TObject);
begin
j1:=Tjpegimage.Create ;
j2:=Tjpegimage.Create ; j1.LoadFromFile('f:\redtree.jpg');
j2.LoadFromFile('f:\h1.jpg'); listbox1.Items.AddObject(extractFilename('f:\A.jpg'),tobject(j1));
listbox1.Items.AddObject(extractFilename('f:\B.jpg'),tobject(j2));end;procedure TForm1.listbox1Click(Sender: TObject);
var
p:^integer;
begin
image1.Picture.Graphic := TGraphic(listbox1.Items.Objects[listbox1.ItemIndex]) ; {就是下面这句: 假设p:=@j1;可固定获取这个对象的地址。但要是通过点击列表项变换关联的j1、j2对象,
那么这个语句该怎么写?}
P:[email protected][listbox1.ItemIndex];//[Error] Unit1.pas(56): Variable required
edit2.Text :=inttostr(p^);
end;procedure TForm1.FormDestroy(Sender: TObject);
begin
j1.Free ;
j2.Free ;
end;
var j1,j2:Tjpegimage;
procedure TForm1.Button1Click(Sender: TObject);
begin
j1:=Tjpegimage.Create ;
j2:=Tjpegimage.Create ; j1.LoadFromFile('f:\redtree.jpg');
j2.LoadFromFile('f:\h1.jpg'); listbox1.Items.AddObject(extractFilename('f:\A.jpg'),tobject(j1));
listbox1.Items.AddObject(extractFilename('f:\B.jpg'),tobject(j2));end;procedure TForm1.listbox1Click(Sender: TObject);
var
p:^integer;
begin
image1.Picture.Graphic := TGraphic(listbox1.Items.Objects[listbox1.ItemIndex]) ; {就是下面这句: 假设p:=@j1;可固定获取这个对象的地址。但要是通过点击列表项变换关联的j1、j2对象,
那么这个语句该怎么写?}
P:[email protected][listbox1.ItemIndex];//[Error] Unit1.pas(56): Variable required
edit2.Text :=inttostr(p^);
end;procedure TForm1.FormDestroy(Sender: TObject);
begin
j1.Free ;
j2.Free ;
end;
如果交换,就让如同两个普通数字交换一样,只是临时变量为TObject.
当然可以通过TObject对象来处理,新手,想通过不同方式观察、学习一下。