PaintPicture是VB4新提供的图形图像处理方法,它的基本功能是图像块传输,在以前的VB版本中要产生块传输效果,需采用Win?dowsGDI中的块传输函数BitBltAPI调用。PaintPicture正是VB4中用来代替BitBltAPI调用的简单而方便的方法。它能快速地将两幅位图进行合并;能将位图的全部或某一部分快速剪切并粘贴到其它地方;并能将位图自动延伸或压缩以适应新的环境;能在屏幕上不同位置之间、屏幕与内存之间传递位图;它采用32位三元光栅操作代码(ROP),在源位图、选定的刷子位图和目标位图之间进行颜色组合,生成目标位图中的最终颜色,它将13个常用的ROPR操作以内部常量形式给出,不需任何声明,不用理会其32位参数值。
基本格式:
Object.PaintPicturepicture,x1,y1,width1,height1,
x2,y2,Width2,height2,opcode
其中Object可以为窗体或PictureBox控件
Picture可以为BMP、Dib、Ico、Wmf、Emf等格式的图片
X1、Y1、Width1、height1为目标位图的参数
X2、Y2、Width2、height2为源位图的参数
opcode表示源图与目标位图(或刷子位图)的组合关系,该参数与BitBlt中dwRop参数含义相同。VB4为opcode定义了13个内部常量:
vbDstInvert:目标位图取反
vbSrcCopy:源位图直接覆盖目标位图
vbSrcAnd:源位图与目标位图进行“与”操作
bSrcInvert:源位图与目标位图进行“异或”操作
vbSrcPaint:源位图与目标位图进行“或”操作
vbNotSrcCopy:源位图取反
vbSrcErase:目标位图取反,再与源位图进行“与”操作
vbNotSrcErase:源位图与目标位图进行“或非”操作
vbMergePaint:源位图取反,再与目标位图进行“或”操作
此外,与刷子位图有关的常量是vbMergeCopy、vbPat?Copy、vbPatInvert和vbPatPaint,这13个内部常量可以在菜单View/ObjectBrowser/VB-VisualBasicobjectsandproce?dures/RasterOpConstants中列出。
巧用PainPicture方法,结合控件属性,可以方便地产生许多常见的图像切换效果,如我们在多媒体作品及电视中常见的图像旋转引入、翻转、飞入、滑入、弹出、淡入淡出、隐现等动画效果。
[VB.NET程序]GSM短信模块库函数,可以用VB,VC,调用简单实用 [办公软件]PowerPoint做交互课件之弃用VBA [办公软件]VBA获取U盘、主板、CPU序列号和网卡MAC地址 [办公软件]VBA设置文件属性及加密源代码示例 [办公软件]VBA中初始化ADO连接的几种方法 [网络安全]“VB破坏者变种N”病毒摘要 [Web开发]ASP.NET上传文件到数据库VB版 [办公软件]在Excel中利用VBA实现多表单元格数据的读取与赋值… [办公软件]使用Vba读取已关闭的Excel工作薄数据到当前工作表… [办公软件]Excel编程基础之VBA文件操作详解
|