to bubble: 谢谢你,你那种方法可以实现jpg,但是jpg.LoadFromFile(filename);
这里filename可以是任意jpg文件,我显示第一个jpg可以,但是显示第二个时怎么画布
还是那么大,我把源程序贴出来你帮我看看。
procedure TForm1.show(Sender: TObject);
var scale :integer; jpg:TJpegImage;bmp:TBitmap;
begin
jpg := TJpegImage.Create;
jpg.LoadFromFile(path);
scale:=trunc(jpg.Width / panel1.Width)+1; //比例倍数;
image1.clientWidth:=trunc(jpg.Width / scale );
image1.clientHeight :=trunc(jpg.Height/scale );
Image1.Canvas.StretchDraw(Image1.ClientRect,jpg);
jpg.Free ;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
path:='e:/3.jpg';
show(sender);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
path:='e:/2.jpg';
show(sender);
end;
其中path是全局变量。