我在这里学编程 进阶篇 共28页[1 2 3 4 5 6 7 >»<.. 最后一页]

用PaintPicture方法进行图片的缩放和翻转操作

    PaintPicture方法将一个图片框中的图形复制到另外个图片框中,并且在复制图形时进行缩放和翻转操作。



    PaintPicture方法是窗体或图片框的一个很实用的方法,它能够将窗体或图片框中的一个矩形区域的像素复制到另一个对象上,并且可以对复制的图形进行缩放和翻转等操作。

PaintPicture方法的语法如下:
Dpic. PaintPicture Spic,dx,dx,dw,dh,sx,sy,sh [,rop]
各参数的含义如下:
Dpic:为目标对象,可以是窗体或图片框控件。
Spic:传送源,可以是图片框和图像框,也可以窗体的Picture属性。
dx,dy :目标区域某顶点坐标。
Dw,dh:目标区域的宽和高。如果为负值,则表示从(dx,dy)指定的顶点起,沿坐标轴的负方向
sx,sy:要传送的的矩形区域某顶点坐标。
sw,sh:要传送的矩形区域的宽与高。
Rop:指定所传送的像素与目标区域中现有的像素的组合模式,例如,对传送像素和现有像素进行逻辑与、或和非单位能够操作。缺省时表示将现有的像素替换成传送的像素。

1.制作应用程序界面
适当调整窗体Form1的大小,然后在上面放置四个图片工具框和三个按钮,调整各控件在窗体中的位置。

2.设置控件属性
a) Form1的Caption属性为:操作图片
b) Picture1的AutoSize属性为:True
c) Command1的Caption属性为:缩小
d) Command2的Caption属性为:水平翻转
e) Command3的Caption属性为:垂直翻转

3.程序代码如下
Dim w As Integer
Dim h As Integer

Private Sub Command1_Click() ‘缩小为原图的一半
Picture2.PaintPicture Picture1.Picture, 0, 0, w / 2, h / 2, 0, 0, w, h
End Sub

Private Sub Command2_Click() ‘缩小为原图的一半,并水平翻转
Picture3.PaintPicture Picture1.Picture, 0, 0, w / 2, h / 2, w, 0, -w, h
End Sub

Private Sub Command3_Click() 缩小为原图的一半,并垂直翻转
Picture4.PaintPicture Picture1.Picture, 0, 0, w / 2, h / 2, 0, h, w, -h ‘
End Sub

Private Sub Form_Load()
w = Picture1.Width
h = Picture1.Height
End Sub
 

我也会VB编程共43页[1 2 3 4 5 6 7 >»<... 最后一页]