在.NET中完成彩色光標(biāo)與自定義光標(biāo)
發(fā)表時(shí)間:2024-06-14 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]本例子在.NET中實(shí)現(xiàn)彩色光標(biāo),動(dòng)畫(huà)光標(biāo)和自定義光標(biāo),下面是完整的例子,可以通過(guò)命令行編譯即可看到效果。Test.cs using System; using System.Drawing; using System.Windows.Forms; using System.Runtime...
本例子在.NET中實(shí)現(xiàn)彩色光標(biāo),動(dòng)畫(huà)光標(biāo)和自定義光標(biāo),下面是完整的例子,可以通過(guò)命令行編譯即可看到效果。
Test.cs
using System;
using System.Drawing;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Reflection;
namespace ColorCursor
{
/// <summary>
/// 本例子的作用:
/// 在.NET中實(shí)現(xiàn)彩色光標(biāo),動(dòng)畫(huà)光標(biāo)和自定義光標(biāo)。
/// </summary>
public class Form1 : System.Windows.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 = "歡迎光臨【孟憲會(huì)之精彩世界】:http://dotnet.aspx.cc/";
Cursor myCursor = new Cursor(Cursor.Current.Handle);
//dinosau2.ani為windows自帶的光標(biāo):
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;
}
}
}