用VB编程实现图像的熠熠生辉效果
添加时间: 2006-2-12 9:07:21 作者: VB教程 阅读次数:146 来源: http://www.d9soft.com
为了使本特效更灵活、更实用,笔者定义了几个参数,可以通过参数对特效做调整以达到满意的效果。
参数表-----------------------------------------------------
Angle 光照倾角,取值0到90之间,以角度为单位
WidthOfArea 光照区宽度,取值大于1的整数,以像素为单位
Speed 光照区运动速度,取值大于1的整数
EnhanceRatio 光照强度参数,取值大于1的整数
-----------------------------------------------------
好,原理就这么多,现在我们开始动手实现吧!打开VB6.0,选择新建标准EXE工程,在主窗口form1中绘制下表中所列控件并设置窗体和各控件的属性。

生成最后的窗体。
在form1的代码编辑窗口中添加如下代码
Option Explicit
Const pi = 3.1415926
'api函数声明------------------------------------------------------------
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
(Destination As Any, Source As Any, ByVal Length As Long) '拷贝内存
Private Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, _
ByVal X As Long, ByVal Y As Long) As Long '取像素值
Private Declare Function SetPixel Lib "gdi32" (ByVal hdc As Long, _
ByVal X As Long, ByVal Y As Long, ByVal crColor As Long) As Long '设置像素值
Private Sub cmd1_Click()
cmd1.Enabled = False
MakeSpark txtA, txtW, txtS, 0, txtE, 65, 10
cmd1.Enabled = True
End Sub
Private Sub MakeSpark(Angle As Long, WidthOfArea As Long, _
Speed As Long, MaskColor As Long, _
EnhanceRatio As Single, OffsetX As Long, OffsetY As Long)
'熠熠生辉效果
'参数表-----------------------------------------------------
'Angle 光照倾角
'WidthOfArea 光照区宽度
'Speed 光照区运动速度
'MaskColor 主体图的屏蔽色
'EnhanceRatio 光照强度参数
'OffsetX 主体图叠加到目标图时的 X 偏移
'OffsetY 主体图叠加到目标图时的 Y 偏移
上一篇文章: 怎样实现在VB窗体中有Html页面 下一篇文章: 在程序中做出信息的分隔线
相关文章:

