·天新网首页·加入收藏·设为首页
首页|笔记本|手机|数码相机|摄像机|MP3/MP4|主板|内存|显示器|办公|打印机|下载|开发|汽车|学院|业界
硬件|台式机|数码|数字家庭|投影仪|GPS/CPU|显卡|硬盘|服务器|网络|一体机|驱动|源码|游戏|考试|报价
您现在的位置:天新网 > 软件开发 > .Net开发 > C#
在.NET中实现彩色光标,动画光标和自定义光标
http://dev.21tx.com 2004年10月22日 【孟宪会之精彩世界】 孟宪会

下面是完整的例子,可以通过命令行编译即可看到效果。

Test.cs

using System; using System.Drawing; using System.<a href="http://dev.21tx.com/os/windows/" target="_blank">Windows</a>.Forms; using System.Runtime.InteropServices; using System.Reflection; namespace ColorCursor { /// <summary> /// 本例子的作用: /// 在<a href="http://dev.21tx.com/dotnet/" target="_blank">.net</a>中实现彩色光标,动画光标和自定义光标。 /// </summary> public class Form1 : System.<a href="http://school.21tx.com/os/windows/" target="_blank">Windows</a>.Forms.Form { [DllImport("user32.dll")] public static extern IntPtr LoadCursorFromFile( string fileName ); [DllImport("user32.dll")] public static extern IntPtr SetCursor( IntPtr cursorHandle ); [DllImport("user32.dll")] public static extern uint DestroyCursor( IntPtr cursorHandle ); [STAThread] static void Main() { Application.Run(new Form1()); } public Form1() { this.Text = "欢迎光临【孟宪会之精彩世界】:http://dotnet.<a href="http://dev.21tx.com/web/asp/" target="_blank">ASP</a>x.cc/"; Cursor myCursor = new Cursor(Cursor.Current.Handle); //dinosau2.ani为windows自带的光标: IntPtr colorCursorHandle = LoadCursorFromFile(@"C:\WINNT\Cursors\dinosau2.ani" ); myCursor.GetType().InvokeMember("handle",BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.SetField,null,myCursor, new object [] { colorCursorHandle } ); this.Cursor = myCursor; } } }

上一篇: C#中使用反射的性能分析
下一篇: 用Visual C#实现文件大批量处理

Google
 
热点文章
关于我们 | 联系我们 | 广告服务 | 工作机会 | 版权声明 | 欢迎投稿 | 网站地图
Copyright © 2000-2008 , www.21tx.com , All Rights Reserved .
© 晨新科技 版权所有 Created by TXSite.net