我要有序的显示我的五张图片。我现在写成随机的,为什么老报错!请大虾看看!
说不能引导图片!
var
sFN: array[1..10] of string;
begin
Randomize;
sFn[1] := 'c:\1.jpg';
sFn[2] := 'c:\2.jpg';
sFn[3] := 'c:\3.jpg';
sFn[4] := 'c:\4.jpg';
sFn[5] := 'c:\5.jpg';
Image1.Picture.LoadFromFile(sFn[Random(10)]);end;最好能有源代码!
例外。1500分求助一个三个显示图片的摸奖程序,然后根据三个图片得出中奖级别的程序!我要源代码!!!
我的邮箱是[email protected].
说不能引导图片!
var
sFN: array[1..10] of string;
begin
Randomize;
sFn[1] := 'c:\1.jpg';
sFn[2] := 'c:\2.jpg';
sFn[3] := 'c:\3.jpg';
sFn[4] := 'c:\4.jpg';
sFn[5] := 'c:\5.jpg';
Image1.Picture.LoadFromFile(sFn[Random(10)]);end;最好能有源代码!
例外。1500分求助一个三个显示图片的摸奖程序,然后根据三个图片得出中奖级别的程序!我要源代码!!!
我的邮箱是[email protected].
再:在uses单元加Jpeg没有,显示jpg文件要用到这个单元的
改为:
Image1.Picture.LoadFromFile(sFn[1+Random(5)]);
sFN: array[0..9] of string;
var
sFN: array[1..10] of string;
i:Integer;
begin
Randomize;
sFn[1] := 'c:\1.jpg';
sFn[2] := 'c:\2.jpg';
sFn[3] := 'c:\3.jpg';
sFn[4] := 'c:\4.jpg';
sFn[5] := 'c:\5.jpg';
//
for i:=1 to 5 do
begin
Image1.Picture.LoadFromFile(sFn[i]);
end;
end;
I:integer ;
begin
if I>5 then I:=1;
for I:=1 to 5 do
Image1.Picture.LoadFromFile('C:\'+inttostr(I)+'.jpg');
end;
var
Bitmap:TBitmap;
begin
inc(i);
Bitmap:=TBitmap.Create;
try
Bitmap.LoadFromFile(ExtractFilePath(Application.ExeName)+'Bitmap'+inttostr(i)+'.bmp');
Form1.Canvas.Brush.Bitmap := Bitmap;
Form1.Canvas.FillRect(Rect(0,0,Form1.ClientWidth,Form1.ClientHeight));
finally
Form1.Canvas.Brush.Bitmap := nil;
Bitmap.Free;
end;
if i= 8 then//循环显示八张图片
i:=0;
end;
i:integer;
begin
i:=random(5);
if i<0 then//防止random(i)=0
Image1.Picture.LodFromFile('c:\'intTostr(i)+'.jpg');
end;
Randomize;
再
Image1.Picture.LoadFromFile(sFn[Random(5)]);
var
sFN: array[1..10] of string;
begin
Randomize;
sFn[1] := 'c:\1.jpg';
sFn[2] := 'c:\2.jpg';
sFn[3] := 'c:\3.jpg';
sFn[4] := 'c:\4.jpg';
sFn[5] := 'c:\5.jpg';
Image1.Picture.LoadFromFile(sFn[Random(5)]);
end;
原因是因为你定义了一个长度为10的数组,而在你的程序中数组的后5个是空的。
但是你又用了random(10)这样的随机数是范围在1---9之间,你仔细想想,如果出先0,
6,7,8,9这几个数的时候会怎么样呢?
该为楼上那样你的这些错误问题就不会出来了。快改好吧。或者把数组后面五个也赋值,而且
random(10)+1;也一样ok了。