明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線(xiàn)學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

在.NET中完成彩色光標(biāo)與自定義光標(biāo)

[摘要]本例子在.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;
  }
  }
  }