您的位置:逆风者 VB 正文
原作者:www.upwinder.com 添加时间:2007-09-02 原文发表:2007-08-31 人气:10 来源:未知

  一道炫目的闪光在图像上从左至右徐徐掠过,相信如果把这样的特效应用到程序的界面上一定能为你的程序增色不少。这样的特效到底是怎样实现的呢?让我们一起来分析一下,这是本特效在某一瞬间的截图,可以看出沿着一条倾斜的扫描线,它周围的象素都按照近强远弱(距扫描线)的规律增强亮度(当然,扫描线并不显示出来,它只是一个抽象的概念,以方便我们的编程工作)。当扫描线从图像最左端平滑地移动到图像最右端的时候,由于视觉暂留作用,看起来就会有熠熠生辉的效果。那么怎样加强像素的亮度呢?可不能直接增大像素的颜色值,因为像素的颜色值是一个长整形数值,使用4个字节表示,最高位的字节的值为0,其它3个字节依次是B、G、R值,所以要加强像素的亮度,就要分别增加B、G、R值的大小。由于这是个动态特效,静态图片很难表达清楚,读者可先运行一下代码以帮助理解。

  为了使本特效更灵活、更实用,笔者定义了几个参数,可以通过参数对特效做调整以达到满意的效果。

  参数表-----------------------------------------------------

  Angle 光照倾角,取值0到90之间,以角度为单位

  WidthOfArea 光照区宽度,取值大于1的整数,以像素为单位

  Speed 光照区运动速度,取值大于1的整数

  EnhanceRatio 光照强度参数,取值大于1的整数

-----------------------------------------------------


逆风者
  好,原理就这么多,现在我们开始动手实现吧!打开VB6.0,选择新建标准EXE工程,在主窗口form1中绘制下表中所列控件并设置窗体和各控件的属性

控件

属性

设置

Form1

Name

Form1

ScaleMode

3-pixel

PictureBox

Name

PicDest

ScaleMode

3-pixel

Picture

背景图

PictureBox

Name

PicSource

ScaleMode

3-pixel

Picture

主体图

Label

Name

LblA

Caption

角度

Textbox

Name

TxtA

Text

30

Label

Name

LblW

Caption

宽度

Textbox

Name

TxtW

Text

15

Label

Name

LblE

Caption

强度

Textbox

Name

TxtE

Text

15

Label

Name

LblS

Caption

速度

Textbox

Name

TxtS

Text

1

CommandButton

Name

Cmd1

Caption

开始特效

  生成最后的窗体。

[1][2]下一页

相关文章

在VB中调用EXCEL
制作自己的网络搜索软件
用VB编写标准CGI程序(下)
用VB6.0设计简易赛车游戏
用API函数控制光驱的开关
用VB自制屏幕保护程序
VB 从零开始编外挂(六)
VB常见问题解答(1)
锁住数据库中的表
树视TreeView树视的使用技巧
利用VB三维面板控件设计流动条
VB 从零开始编外挂(五)
一个用VB实现的鼠标绘图程序
利用INI文件给程序创建动态菜单
VB6制作Win98风格的工具栏
VB实现按钮浮动效果
自动更新工作站的应用程序
用VB读写注册表实例
用VB尝试新的界面风格
在桌面上建立一个 Internet 快捷键

相关评论


本文章所属分类:首页 VB

  热门关键字: