标题:C#水波纹特效自定义控件
取消只看楼主
coolszy
Rank: 1
来 自:编程论坛
等 级:新手上路
帖 子:241
专家分:5
注 册:2007-11-3
结帖率:100%
 问题点数:0 回复次数:0 
C#水波纹特效自定义控件
很久前在一款软件上看到水波纹的效果就深深喜欢上这中特效,但是一直没有找到源码。最近从网上找到一份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;



水波纹特效控件.rar (204 KB)
收到的鲜花
  • 野比2010-09-23 21:51 送鲜花  10朵   附言:好文章。
搜索更多相关主题的帖子: 定义 控件 特效 水波 
2010-09-20 08:54



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-320937-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.066767 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved