请问:
在C#中如何改变鼠标样式?

解决方案 »

  1.   

    this.Cursor = Cursors.Default;
      

  2.   

    一般是这样try {
    this.Cursor = Cursors.WaitCursor;}catch (Exception ex) {} finally {
    this.Cursor = Cursors.Default;
    }
      

  3.   

    楼上的正解,一般都是
    Cursor = Cursors.**
    后面有各种鼠标样式,最好是用try{}finally{}圈起来。否则程序出错后鼠标样式没有还原。
      

  4.   

    System.Windows.Forms.Cursor cur = new Cursor("c:\\mycursor.cur");
    this.Cursor = cur;
      

  5.   

    那我如果想在treeview中实现拖动鼠标改变节点顺序该怎么做啊?
      

  6.   

    这个嘛,问题不难,回答蛮难.你得再DragDrop,DragLeave,DragOver里面写代码,修改你的tree的源数据,然后刷新树
      

  7.   

    直接在控件的属性"Cursor"中选择就可以啦.
      

  8.   

    1.对于普通的鼠标样式(Cursors.*),可以直接设定;
    2.如何改变windows提供的所有类型的鼠标呢?
    Test.csusing System;
    using System.Drawing;
    using System.Windows.Forms;
    using System.Runtime.InteropServices;
    using System.Reflection;namespace ColorCursor
    {
     /// <summary>
     /// 本例子的作用:
     /// 在.NET中实现彩色光标,动画光标和自定义光标。
     /// </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 = "欢迎光临【孟宪会之精彩世界】:http://dotnet.aspx.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;
      }
     }
    }
    [引自【孟子E章】]