注册 登录
编程论坛 C# 论坛

C#水波纹特效自定义控件

coolszy 发布于 2010-09-20 08:54, 3125 次点击
很久前在一款软件上看到水波纹的效果就深深喜欢上这中特效,但是一直没有找到源码。最近从网上找到一份C++的源码,利用休息时间分析一下翻译成C#版本。为了便于使用,特封装成控件。(.NET Framework2.0)
使用步骤:
1、打开VS,在“工具栏”的“常规”下“右击”--“选择项”--“浏览”选中WaterWave.dll文件,把水波纹控件添加到工具箱中。
2、把控件添加到窗体中,设置Image属性。
3、在窗体的Load()事件中加入如下代码:
   waterWave1.load();
4、运行,鼠标移动到图片上看看。

该控件有3个自定义属性
Image:显示水波纹的图片,
Auto:是否自动产生水波纹,默认为False。
Number:源点数,也就是从哪几个点产生水波纹。不要设置太大。50和1000效果差不多。
注意:当Auto为False时,鼠标移动到图片时从鼠标位置产生水波纹,此时Number属性不起作用
      当Auto为True时,自动产生水波纹,此时Number属性才会起作用。
      图片不要太大,否则效果不明显。
      某些图片可能不支持,换种图片或者换种格式试试。
      程序有不完美的地方还请谅解。
      该特效局占内存。^_^
                                       coolszy
                                       2010年9月20
程序代码:
//演示代码:
//如果想自动产生水波纹需如下设置
//waterWave1.Auto = true;
//waterWave1.Number= 50;

waterWave1.load();
//调用玩load()方法后才能修改Height和Width
//waterWave1控件的Height和Width等于图片的Height和Width
waterWave1.Top = 0;
waterWave1.Left = 0;
this.Height = waterWave1.Height;
this.Width = waterWave1.Width;



只有本站会员才能查看附件,请 登录
14 回复
#2
bygg2010-09-20 09:44
看看先
#3
bygg2010-09-20 09:46
效果不错,但是实用性却不是很大,用于学习可以,呵呵
#4
何事惊慌2010-09-20 18:09
效果确实很好,可是好像还是有点小问题,就是最后离开的时候所有出现水波的地方好像都会出现锯齿,不很清楚了,不知道那个高手能解决下这个问题
#5
Thomas_Tian2011-03-19 14:50
找了很久,谢谢了!
#6
xiedingan2012-10-09 14:31
广告来的,上当了
#7
qq35727892012-10-22 09:21
怎么用啊
#8
c100801092012-10-23 11:23
在哪下载呢
#9
wrp_whu2013-07-07 21:43
效果太大了。。。。可以学习学习。。。有dll文件的代码就好了。。
#10
a8420426632013-11-27 20:33
好好好阿红啊好好啊红啊好好
#11
胡乃坤2014-05-20 14:06
这连接 都没了!!!!!咋搞????
#12
胡乃坤2014-05-20 14:07
你能不能解决那个连接!!!
#13
emhost2015-06-10 17:41
就这么个破垃圾还想收费!!!写的好点还行,可写这么烂也好意思收费
#14
llyy0602015-08-23 13:52
不能用
#15
Tbin2016-05-04 12:33
居然骗人的,我也是服了
1