在VB中提供了完善的做图方法, 可以在窗体或图形框中绘制各种图形, 其中提供了一个方便的图像处理命令即:PaintPicture, 此命令的功能与WINDOWS API 函数BitBlt类似,但由于不用做API函数说明,并且有它独特的功能,所以更有它的方便之处, 使用它可以完成很多图像的特殊处理工作。
一、语法格式:
PaintPicture Pic,destX,destY,destWidth,destHeight,scrX,scrY,scrWidth,scrHeight
其中Pic:为图片对象, 如图形框Picture等;
destX,destY:目标图像位置;
destWidth,destHeight:目标图像尺寸;
scrX,scrY:原图像的裁剪坐标;
scrWidth,scrHeight:原图像的裁剪尺寸;
从以上格式可以看出,此命令的功能就是把一个源图像资源任意复制到指定的区域,并且通过改变参数destWidth与destHeight值,还可以改变复制后的图像的尺寸,实现放大或缩小图像显示, 甚至可以置这两个属性为负值, 这样可使目标图像在水平方向翻转,实现特殊效果的图像显示。
程序实例:(by griefforyou)
在窗体中添加两个PictureBox,两个CommandButton,其中Picture1加载一幅图像
窗体模块中添加以下代码:
Private Sub Command1_Click()
Picture2.PaintPicture Picture1.Picture, Picture1.ScaleWidth, 0, -Picture1.ScaleWidth, Picture1.ScaleHeight
End Sub
Private Sub Command2_Click()
Picture2.PaintPicture Picture1.Picture, 0, Picture1.ScaleHeight, Picture1.ScaleWidth, -Picture1.ScaleHeight
End Sub
运行效果如下: