在Powerpoint这样的软件中,各种各样的图形特效层出不穷,其中“百叶窗”的切换效果尤为新颖奇特。在VB中实现这样的图形特效十分简单方便。其方法是调用WINDOWS的API函数Bitblt。BitBlt函数就类似于C语言中的getimage、putimage两个函数的组合运用。BitBlt原意是“BitBlockTransfer”,其主要用途是位图的复制。用BitBlt函数显示图形特效,其原理十分简单,制作时先在表单中绘制两个图片框,将图片存入一个图片框,同时将另一个图片框设为空,然后调用BitBlt函数将第一个图片框中的图形一部分一部分地复制到第二个图片框中,这样就可以实现千奇百怪的图形特效。其步骤如下:

在VB环境中新建一个窗体,绘制两个图片框picSour和picDest,两个命令按钮cmdShow和cmdExit。首先在窗体的通用过程中声明BitBlt函数即所需要的常量名,在载入窗体同时在picSour中载入图片,在按钮cmdShow的事件中调用BitBlt函数。程序如下:

API函数声明:

DeclareFunctionBitBltLib″GDI″(ByValhDestDCAsInteger,ByValXAsInteger,ByValYAsInteger,ByValnWidthASInteger,ByValnHeightAsInteger,ByValhSrcDCAsInteger,ByValxSrcAsInteger,ByValySrcAsInteger,ByValdwRopAsLong)AsInteger

ConstCOPY-PUT=&HCC0020′BitBlt的15种算法之一,表示直接拷贝

载入图片:

SubForm-Load()

picsour.Picture=LoadPicture(″c:\windows\LEAVES.bmp″)

picsour.ScaleMode=3′以象素为单位

EndSub

显示“百叶窗”的切换效果:

SubComshow-Click()

H%=picsour.ScaleHeight

W%=picsour.ScaleWidth

scanlines=4

ForI=0To(scanlines-1)

Forj=IToH%Stepscanlines

s%=BitBlt%(picdest.hDC,0,j,W%,1,picsour.hDC,0,j,copy-Put)

delay500′延时

Nextj

NextI

EndSub

其中delay是一个通用子过程,用于延时,以便于能看清楚切换效果。代码如下:

Subdelay(delaytimeAsInteger)

ForI=1Todelaytime

NextI

EndSub

通过这样简单的程序就可以实现“百叶窗”的切换特效,其实,只要有合适的算法,运用BitBlt函数能够实现的图形特效是无穷的。有兴趣的读者可以查阅有关VB的参考书。->

C语言百叶窗动画效果算法,用vb实现“百叶窗”的图形特效_visualbasic教程相关推荐

  1. android+百叶窗动画效果,js实现横向百叶窗效果网页切换动画效果的方法

    本文实例讲述了js实现横向百叶窗效果网页切换动画效果的方法.分享给大家供大家参考.具体分析如下: 这是一款很简洁但是效果却不错的网页切换效果,点击新网页后,网页会出现蓝白相间的百叶窗线条自动切换,直到 ...

  2. 教你用HTML+CSS实现百叶窗动画效果

    推荐学习专栏: [JavaWeb]Web前端 JavaWeb学习专栏 文章目录 前言 1.百叶窗效果 2.原理讲解 3.制作百叶窗 4.资源下载 5.完整代码 总结 前言 我们浏览网页的时候总能看见一 ...

  3. html百叶窗切换效果,纯CSS3百叶窗式切换轮播图特效

    这是一款使用纯CSS3制作的百叶窗式切换轮播图特效.该特效使用背景图片来制作,在轮播图切换时,通过一组div元素来制作百叶窗效果,非常的炫酷. 使用方法 HTML结构 该轮播图特效中使用了6张背景图片 ...

  4. html百叶窗切换效果,js实现绿白相间竖向网页百叶窗动画切换效果

    本文实例讲述了js实现绿白相间竖向网页百叶窗动画切换效果.分享给大家供大家参考.具体分析如下: 前面我们讲解了一个网页百叶窗切换动画效果,不过是横向百叶窗,这个是竖向百叶窗,代码基本一样: 百叶窗页面 ...

  5. 鼠标动效html,5种纯CSS3鼠标hover按钮动画效果

    这是一款鼠标hover按钮动画特效.该特效共有5种hover动画效果,它们在结构布局上使用flex来进行布局,并通过css transition来实现动画效果. 使用方法 HTML结构 该按钮特效使用 ...

  6. html怎么把字做成动画效果,8个华丽的HTML5文字动画特效赏析

    文字是网页的灵魂,很早以前有人发明了很多漂亮的计算机字体,这让网页变得样式各异.HTML5和CSS3的出现,我们可以让文字变得更加富有个性,在一些需要的场合,我们甚至可以利用HTML5制作文字动画.本 ...

  7. 分享113个JS特效动画效果,总有一款适合您

    分享113个JS特效动画效果,总有一款适合您 113个JS特效动画效果下载链接:https://pan.baidu.com/s/1k0fyflcyTKQM9pYEif2f9g?pwd=hpa8  提取 ...

  8. 用计算机画小鸡,flash动画设计教程:5.17——如何演示绘制小鸡的动画效果.doc...

    Flash cs3仿真艺术设计5.17:如何演示绘制小鸡的动画效果 本例为Flash CS3仿真艺术设计系列教程,在上一课中我们学习了如何正确制作人物动作的预测,在这一课中我们将学习如何演示绘制小鸡的 ...

  9. 分享111个JS特效动画效果,总有一款适合您

    分享111个JS特效动画效果,总有一款适合您 111个JS特效动画效果下载链接:https://pan.baidu.com/s/1s8mWkRlIZML2t5v1g1rlDA?pwd=pe5p  提取 ...

最新文章

  1. Linux系统基础调优
  2. ring0 ring3 kernel driver
  3. 【渝粤教育】 国家开放大学2020年春季 1013金融统计分析 参考试题
  4. 投资快手近尾声 腾讯持股超30%将置入资产或资源
  5. Scanner--控制台输入
  6. Windows / VS下不同类型变量转换
  7. Linux命令学习手册-mount命令
  8. 安装最好用的计算机软件,装机软件哪个好?教您最好的装机软件推荐
  9. python表情包合集_python——简单生成表情包
  10. linux堡垒机开源软件,几款开源的堡垒机
  11. python采用面向对象编程模式吗_python面向对象编程练习
  12. 良田高拍仪 网页版 二次开发_档案产品库良田书籍高拍仪BS3000P
  13. 解析新时代人工智能机器人的工作原理
  14. JavaWeb-云日志
  15. 一个app从设想到上线运营的完整过程
  16. Linux(CentOS 7)、Windows双系统安装图文教程(超详细)适合初学者
  17. 使用Weevely工具上传一句话木马
  18. 使用numpy实现李代数se(3)和SE(3)之间的指对数映射
  19. 苏州企业申报科技项目的小技巧汇总
  20. python游戏最简单代码-python基础练习之几个简单的游戏

热门文章

  1. 20145129 《Java程序设计》第3周学习总结
  2. bilibili弹幕转ass
  3. ASP.NET vNext 概述
  4. 该内存不能为read解决办法
  5. 304. 二维区域和检索 - 矩阵不可变
  6. brctl 设置ip_docker配置独立桥接IP的方法
  7. 【论文写作】SSM超市管理系统如何写可行性分析
  8. 猜数游戏软件的设计开发系统测试参考
  9. 专科学院计算机专业全国排名,2019年专科专业排行_2019世界大学排名 计算机专业...
  10. 圆柱属于能滚动的物体吗_小学人教版六年级下册数学第3章《圆柱的表面积》知识点+同步练习...