bitblt简易使用教程
的用法
BitBlt 的声明如下(在窗体代码中须在前面加上Private关键字):
Declare Func**** BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
请把Func****替换为 func(baidu)tion
它的参数表如下:
参数 类型 说明
hDestDC Long, 目标设备场景
x,y Long, 对目标DC中目标矩形左上角位置进行描述的那个点。用目标DC的逻辑坐标表示
nWidth,nHeight Long, 欲传输图象的宽度和高度
hSrcDC Long, 源设备场景。如光栅运算未指定源,则应设为0
xSrc,ySrc Long, 对源DC中源矩形左上角位置进行描述的那个点。用源DC的逻辑坐标表示
dwRop Long, 传输过程要执行的光栅运算
用法事例:
l = BitBlt(Picture2.hDC, 0, 0, Picture1.ScaleWidth, Picture1.ScaleHeight, Picture1.hDC, 0, 0, SRCCOPY)
解释:将Picture1中的位置为(0,0),大小为 Picture1.ScaleWidth×Picture1.ScaleHeight 的图像复制到Picture2的(0,0)位置
其中SRCCOPY为绘图模式
BitBlt之所以强大,是因为dwRop参数有不同的值,当dwRop取不同的值时会产生不同的效果。
下面为了让新手便于理解,将源设备定为Picture1,将目标设备称为Picture2。
下面的这些就是dwRop可取的值即其意义:
SRCCOPY:将Picture1中颜色复制到Picture2。
NOTSRCCOPY:将Picture1中颜色取反色,再复制到Picture2。
SRCAND:将Picture1中颜色与Picture2中颜色合并后,再复制到Picture2中。
MERGEPAINT:同时将Picture1与Picture2中的颜色去反色并合并,再复制到Picture2中。
BLACKNESS:将物理调色板的索引0相关的色彩填充到Picture2中,(默认为黑色)。
WHITENESS:将物理调色板的索引1相关的色彩填充到Picture2中,(默认为白色)。
(*)SRCERASE:将Picture1中的颜色去反色,再与Picture2中颜色异或(Xor)合并,,再复制到Picture2中。
(*)NOTSRCERASE: 将Picture2中的颜色去反色,再与Picture1中颜色异或(Xor)合并,,再复制到Picture2中。
(*)SRCINVERT: 将Picture1中颜色与Picture2中颜色异或(Xor)合并后,再复制到Picture2中。
(*)DSTINVERT:将Picture2中颜色取反色后,再复制到Picture2中。
PATCOPY:将特定的模式拷贝到目标位图上。
PATPAINT:通过使用布尔OR(或)操作符将源矩形区域取反后的颜色值与特定模式的颜色合并。然后使用OR(或)操作符将该操作的结果与目标矩形区域内的颜色合并。
PATINVERT:通过使用XOR(异或)操作符将源和目标矩形区域内的颜色合并。
MERGEPAINT:通过使用布尔型的OR(或)操作符将反向的源矩形区域的颜色与目标矩形区域的颜色合并。
注:以上属性需定义
上面带“(*)”号的多次点击会闪烁(因为异或的原因),其中SRCINVERT的解释可能不对,望高手指正
dwRop其实还有MERGECOPY,SRCPAINT,PATCOPY,PATPAINT,PATINVERT五个属性,但我还不明白这些属性的意义,就不在这里献丑了,等待高
手来解释。另外,希望高手能解释一下“物理调色板”。
我写这个是为了帮助新手(其实我也是新手-_-!)处理简单的绘图任务,同时鼓励新手大胆运用API函数。新手在刚学VB时会对API函数敬而远之,会感到其很神秘。其实API跟VB内置的函数是一样的,而且要比VB内置的函数强大许多,只不过需要额外定义。当你习惯用API之后,便会
有相“用”恨晚的感觉。
废话不多说了,赶紧试试吧!
这是程序开始画面:
http://cid-03cbc1ef50ff74ad.skydrive.live.com/browse.aspx/.Public?lc=2052
在里面的 API函数研究文件夹 中
点击“动画”按钮出现自动演示图片闪烁
这是点击“手动”按钮第一次:
bitblt简易使用教程相关推荐
- Python模块(8)-sklearn 简易使用教程
sklearn 简易使用教程 1.scikit-learn的数据集 2.scikit-learn 的训练和预测 scikit-learn 是在Numpy,SciPy,Matplotlib三个模块上编写 ...
- Python模块(7)-SciPy 简易使用教程
SciPy 简易使用教程 1. 符号计算 2. 函数向量化 3. 波形处理scipy.signal 3.1 滤波器 3.2 波峰定位 基于numpy的一个高级模块,为数学,物理,工程等方面的科学计算提 ...
- python模块(5)-Matplotlib 简易使用教程
Matplotlib简易使用教程 0.matplotlib的安装 1.导入相关库 2.画布初始化 2.1 隐式创建 2.2 显示创建 2.3 设置画布大小 2.4 plt.figure()常用参数 3 ...
- Python模块(2)-Numpy 简易使用教程
Numpy模块 简易使用教程 1.数组创建 2.数组基本属性-维度.尺寸.数据类型 3.数组访问-索引.切片.迭代 4.数组的算术运算-加减乘除.转置求逆.极大极小 5.通用函数-sin,cos,ex ...
- Python模块(1)-Argparse 简易使用教程
argparse 简易使用教程 1基本函数 2例子程序演示 3常用参数解释 4argparse模块整理的缘起 1基本函数 argparse是Python中用于命令行中进行参数解析的一个模块,可以自动生 ...
- layui个人中心html,Layui的简易入门教程
layui是一款采用自身模块规范编写的前端UI框架,非常适合界面的快速开发.本篇文章给大家分享一下Layui的简易入门教程,介绍一下layui如何在你的项目中使用. 获得 layui 后,将其完整地部 ...
- 伤害世界服务器连接失败_伤害世界服务器简易架设教程
伤害世界服务器简易架设教程 那么很简单,首先需要大家做的就是下载我们的服务器文件,这个文件在哪里呢,我们就直接在steam下载即可 直接下载即可,这就是服务端文件了 下载完毕后,它会在以上steam里 ...
- Xilinx FPGA平台GTX简易使用教程(一)GTX基础知识
理解GTX的必备姿势,学起来! 汇总篇: Xilinx FPGA平台GTX简易使用教程(汇总篇) 目录 一.什么是GTX? 二.Quad/Channel 三.PMA与PCS 四.GTX收发处理流程 五 ...
- Music Store(音乐商店)简易中文教程
官方网址: CodePlexProject Hosting for Open Source Software http://www.codeplex.com/ ===== ...
最新文章
- 机器学习基础专题:评估指标
- 一文看懂深度学习AutoML和NAS
- javascript技术教程蔡敏_程序员都必掌握的前端教程之JavaScript基础教程(上)
- SSD: Signle Shot Detector 用于自然场景文字检测
- ubuntu上的wordpress文章的本地存储位置
- 从“为什么不能直接打开PDF文件”说到“脚本***”
- java增加内容辅助_Eclipse自定义内容辅助基于默认Java内容辅助结果
- php的jquery ajax请求,jquery ajax请求
- select_related和prefetch_related的用法与区别
- 法线贴图及其用法详解
- WordPress 前端投稿/编辑插件 DJD Site Post(支持游客和已注册用户)
- html关于图片缓慢放大
- 和面试官对线HashMap
- 微信小程序九宫格抽奖
- 2014年电大计算机应用基础考,2014年中央电大计算机应用基础网考最新修改版小抄.doc...
- 累计三年,断断续续的管理经验
- 【纪中受难记】——Day17:本来能AK
- jquery的淡入,淡出事件 fadeIn fadeOut
- props 和 state的区别
- MSproject软件在项目管理中实际操作干货
热门文章
- Go微服务框架及基础平台选择
- Matthew20211117
- 广东管理系统计算机应用实践,广东工业大学自考管理系统中计算机应用(00052)实践环节考核要求...
- 应用调试之使用strace命令跟踪系统调用
- ERP的主要功能模块
- dreamweave
- Adobe Dreamweave下载和安装步骤
- 关于Ubuntu 下新开发板adb 无法识别的问题(成功案例:解决了三星,索爱,OPPO X903案例)
- 2020-03-20盘后总结,指数高开,尾盘北上资金涌入
- [算法Tutorial]Adversary Argument,对手论证