Delphi报错,不知为何?

unitGameForm;interfaceusesWinapi.Windows,Winapi.Messages,System.SysUtils,System.Varia... unit GameForm;

interface

uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, Vcl.Imaging.pngimage,
Vcl.StdCtrls,jpeg;

type
TForm1 = class(TForm)
Image1: TImage;
Button1: TButton;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
map:array[0..100,0..100] of integer;
imgmap:array[0..100,0..100] of Timage;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var i,j,k,l:longint;
begin
for I := 0 to 100 do
for j := 0 to 100 do begin
imgmap[i,j]:=Timage.Create(self);
imgmap[i,j].Width:=33;
imgmap[i,j].Height:=33;
imgmap[i,j].Top:=1;
imgmap[i,j].left:=1;
imgmap[i,j].Picture.LoadFromFile('D:\Laz\Island\Win32\Debug\Blocks\1.png');
imgmap[i,j].Stretch:=true;
end;
end;

End.
文件路径我检查过的没错。
现在报这个错:

请问为什么???
展开
 我来答
dodolon
2014-04-03 · TA获得超过7713个赞
知道大有可为答主
回答量:4477
采纳率:84%
帮助的人:2131万
展开全部
给你的示例程序你还没读懂,同一个图片文件,需要每次都用LoadFromFile装载吗?
还有就是你的程序要用101*101=10201个Image控件显示图片,要考虑内存的开销,图片要尽量小。很可能你的程序就是因为内存问题出错。
更多追问追答
追问
错在:      Else imgmap[i,j].Picture:=imgmap[1,1].picture;
显示:…… read of address 0x000001c0'. Process Island.exe (2360)
追答

你上面的程序没有Else imgmap[i,j].Picture:=imgmap[1,1].picture;这句啊。给你的示例程序里imgmap数组的下标是从0开始,

这里 if i+j=0 then 是 i,j 都为0时,也就是数组的第一个元素(imgmap[0,0])从文件装载图片,然后其他数组元素从第一个数组元素(imgmap[0,0])获得图片。你现在哪个数组元素从文件装载图片,然后其他数组元素从第哪个数组元素获得图片?在执行imgmap[i,j].Picture:=imgmap[1,1].picture时imgmap[1,1]中装载图片了吗?

cnsuyong
2014-04-04 · TA获得超过1075个赞
知道小有建树答主
回答量:767
采纳率:100%
帮助的人:432万
展开全部
Image.Parent := AFormOrAWinControl;//对于你的代码,可以使用Self,此时Self指的是Form1。
你需要理解TWinControl的Owner和Parent属性。Owner是维护对象关系的,着眼点是内存管理,在创建和销毁时非常重要。Parent是维护显示关系的,着眼点是相对位置和前后层级。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xtfnpgy
2014-04-03 · TA获得超过1784个赞
知道大有可为答主
回答量:1989
采纳率:76%
帮助的人:1093万
展开全部

我这里用XE5尝试了没有问题啊,就是加载的有点慢 ,楼主断点调试下看看,是哪句报错

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式