Excel 基础教程:在任意位置绘制图形
使用 PaintPicture 方法,可以在窗体、图片框和 Printer 对象上的任何地方,绘制图形。PaintPicture 方法的语法是:
[object.]PaintPicturepic,destX,destY[,destWidth[,destHeight[,srcX _
[,srcY[,srcWidth[,srcHeight[,Op]]]]]]]
目标object指的是窗体、图片框或 Printer 对象,这些地方都是pic图片表现的处所。如果object被忽略了,则认为指定的就是当前的窗体。pic参数必须是一个图片对象,它是由窗体或控件的 Picture 属性决定。
destX和destY参数,是按照objec的 ScaleMode,该图象将出现的水平和垂直位置。destWidth和destHeight参数是可选项,用来设置在object目标中该图象的宽度和高度。
srcX和srcY参数是可选项,用来定义pic中裁剪区左上角的 x 和 y 坐标。
可选的Op参数用来定义当在目标object上绘图时,在图片上执行的光栅操作(例如,AND 和 XOR)。
PaintPicture 方法可代替 BitBlt Windows API 函数,在将矩形图形块从一个地方移到任意另一地方时,它可执行广泛的各种操作。
例如,可以使用 PaintPicture 方法生成同一位图的多份副本,并将它们平铺在窗体上。使用这种方法,比在窗体上移动图片控件要快。下列代码是用来平铺图片控件的 100 份拷贝,并且通过给destWidth设置一个负值,可以使每张图片进行水平翻转。
For i = 0 To 10
For j = 0 To 10
Form1.PaintPicture picF.Picture, j * _
picF.Width, i * picF.Height, _
picF.Width, -picF.Height
Next j, i
详细信息请参阅《语言参考》的“PaintPicture 方法”。