首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

这一句的异常如何修改

2012-06-29 
这一句的错误怎么修改?uses jpegvarj1,j2:Tjpegimageprocedure TForm1.Button1Click(Sender: TObject)b

这一句的错误怎么修改?
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:=@listbox1.Items.Objects[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对象来处理,而用指针,那样用也不正常。
如果交换,就让如同两个普通数字交换一样,只是临时变量为TObject.
[解决办法]
强制转换成整数,再由整数转为指针。

热点排行