C#水波纹特效自定义控件_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > C#水波纹特效自定义控件

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

 2010/11/16 11:45:58  coolszy  http://coolszy.javaeye.com  我要评论(0)
  • 摘要:很久前在一款软件上看到水波纹的效果就深深喜欢上这中特效,但是一直没有找到源码。最近从网上找到一份C++的源码,利用休息时间分析一下翻译成C#版本。为了便于使用,特封装成控件。(.NETFramework2.0)使用步骤:1、打开VS,在“工具栏”的“常规”下“右击”--“选择项”--“浏览”选中WaterWave.dll文件,把水波纹控件添加到工具箱中。2、把控件添加到窗体中,设置Image属性。3、在窗体的Load()事件中加入如下代码:waterWave1.load();4、运行
  • 标签: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;

?

发表评论
用户名: 匿名