怎样在程序里确定image控件的尺寸?
image控件载入图片后尺寸不确定,设定了image控件的大小随图片变化。
[解决办法]
ShowMessage( Format('%d %d', [ Image1.ClientWidth, Image1.ClientHeight]));
这个是IMAGE控件的大小
ShowMessage( Format('%d %d', [ Image1.Picture.Width, Image1.Picture.Height]));
这个是图像大小
你设置了大小随图片变化 上边两个的结果一致
[解决办法]
给一个方法:约定Image在816,610方框内中心显示。
procedure TSeleteImageFrm.ChangeImageSize;
var W,H,WW,WH:integer;
k,k1:double;
begin
W:=Image1.Picture.Graphic.Width;
H:=Image1.Picture.Graphic.Height;
K1:=816/610;
K:=W/H;
if K1<K then
begin
Image1.Width:=816;
Image1.Left:=0;
Image1.Height:=Trunc(816/K);
Image1.Top:=Trunc(610-816/k) div 2;
end
else begin
Image1.Height:=610;
Image1.Top:=0;
Image1.Width:= Trunc(610*K);
Image1.Left:=(816-Trunc(610*k)) div 2;
end;
Image2.Width:=Image1.Width;
Image2.Left:=Image1.Left;
Image2.Height:=Image1.Height;
Image2.Top:=Image1.Top;
KX:=Image1.Picture.Bitmap.Width/Image1.Width;
KY:=Image1.Picture.Bitmap.Height/Image1.Height;
end;
[解决办法]
载入图片之后,可以根据图片的大小来获取IMage的小小
[解决办法]
在QQ上跟你说话你没反应。看你那号等级那么低,相必平时都不在线。郁闷。
[解决办法]
Image1.AutoSize:=True;
让它自动分配控件大小显示不行了嘛