zoukankan      html  css  js  c++  java
  • 如何在C#中设置自定义光标

         Visual Studio平台中只给出了一些常见的光标,如何在应用程序中使用自己定义的更加专业美观的光标呢?这里Visual Studio并没有给出现成的支持,不过可以通过调用API函数来实现目标,ok,下面看看该怎么做吧! 

    一、加载标准光标资源文件(*.cur)

       双击Resource.resx(如果资源管理器中没有这一项只需右击项目选择添加——>新建项——>资源文件即可)添加要显示的光标文件。

    添加完成后,资源管理器中会出现Resources文件夹,我们添加的项目就会出现在这里,如user.cur。

    二、更改光标

       2.1 添加引用  using System.Runtime.InteropServices;

       2.2 在程序中声明光标资源加载函数LoadCursorFromFile;

             [DllImport("user32")]

              private static extern IntPtr LoadCursorFromFile(string fileName);

       2.3 声明数组 byte[] cursorbuffer=namespace.Resource .CursorName;

             Namespace为资源文件所在项目的命名空间名称,CursorName对应光标资源文件名。

       2.4 创建一个临时光标文件tempTest.dat;将cursorbuffer中的数据写入数据文件中;

             FileStream fileStream = new FileStream("tempTest.dat", FileMode. Create);

             fileStream.Write(cursorbuffer, 0, cursorbuffer.Length);

       2.5  关闭文件,利用API 函数LoadCursorFromFile从光标临时文件中创建光标。

              fileStream.Close();

              Cursor .Current =new Cursor(LoadCursorFromFile("temp001.dat"));

          至此,整个流程完成,只要将2.3-2.5中的代码放置到相应的事件中(如窗体的MouseDown事件),即可实现自定义光标了。

  • 相关阅读:
    make clean,make distclean与make depend的区别
    HSTS 与 307 状态码
    阿里云CentOS中vsftp安装、配置、卸载
    vsftp管理脚本(CentOS6用)
    通过修改源码,免插件实现wordpress去除链接中的category
    (转载)Peter Norvig:十年学会编程
    BT觀念分享和常見問題彙整
    Mysql 字符编码
    Mysql 整数类型的字段的属性设置及常用的函数
    MySql快速入门
  • 原文地址:https://www.cnblogs.com/RoyYu/p/2133279.html
Copyright © 2011-2022 走看看