VB6.0让图片自适应Picture图片框大小

   Picture的AutoSize属性设为True的话可以让图片框自动适应图片大小,但是图片不能适应图片框大小;
   Image的Stretch属性设为True的话可以让图片自动适应图像框大小。

   如果仅仅是为了显示的话,那么用Image图像框就可以满足需求了,但是我还想获取图片中某个点的颜色。Picture1.Point(x,y)可以获取Picture1的(x,y)坐标处的颜色(注意单位默认不是像素,而是Twip。单位可在Picture1的ScaleMode属性中设置,设为Pixel就是以像素位单位了),但是Image不能用Point这个方法。
   所以才有了下面的这个方法,让图片适应图片框大小:
   先是用一个隐藏的Image或者Picture打开一个图片(注意如果是用Picture的话要把AutoRedraw属性设为True),然后在另一个可见的Picture上画图:Picture1.PaintPictureImage1.Picture, 0, 0, Picture1.Width,Picture1.Height,完成的功能就是吧Image1已经打开的图片画到Picture1上。
    下面是程序代码:
Image1.Stretch = True
Image1.Picture = LoadPicture("……")
Picture1.PaintPicture Image1.Picture, 0, 0, Picture1.Width,Picture1.Height

   顺便说一下,使用Picture1.Point(x,y)返回的是一个24位数,共3个字节,低位的1个字节是R,中间的1个是G,高位的1个字节是B。

你可能感兴趣的:(vb6.0)