在Form上有一个Panel,现在我想改变鼠标在此Panel的光标(始终都显示)。光标不是系统的,是自己在Resources中定义的moon.cur文件。请问我如何操作,可以实现!

解决方案 »

  1.   

    VS菜单->项目-><项目名>属性 
    打开资源页,添加资源->添加现有文件 
    选择你想处理的鼠标光标文件(文件类型*.*) 
    假设程序名是“moon.cur”,在internal class Resources类中就会出现:  internal static byte[] moon {
        get {
            object obj = ResourceManager.GetObject("moon", resourceCulture);
            return ((byte[])(obj));
        }
    }参考如下代码: 
    private void Form1_Load(object sender, EventArgs e)
    {
        Cursor = new Cursor(new MemoryStream(Properties.Resources.moon));
    }
      

  2.   

    为何提示:错误 1 无法将类型“System.IO.MemoryStream”隐式转换为“System.Windows.Forms.Cursor” E:\network\复件 DateCompare\DateCompare\Form1.cs 88 45 DateCompare
    谢谢!
      

  3.   

    上面错误解决了,可是光标还是没有变化,我知道VC中有一个::SetCursor()的函数,此函数可以设置光标(始终显示),在net中有没有类似的函数,因为一旦鼠标移动,光标就有变成原来的样子了,如何解决此问题:让Panel上的光标始终显示为我定义的光标。谢谢各位!
      

  4.   

    -_-!!!
    panel1.Cursor = new Cursor(new MemoryStream(Properties.Resources.moon));
      

  5.   

    如何让光标始终显示到Panel上。现在是:无法始终显示,一旦鼠标移动,我自定义的光标就没有了!谢谢,问题解决马上给分!
      

  6.   

    或者说我应该将panel1.Cursor = new Cursor(new MemoryStream(Properties.Resources.moon));
    放置到什么位置?谢谢!