`
zhuojb
  • 浏览: 91018 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

自定义鼠标样式的做法

阅读更多

调用外部鼠标样式,一般情况有两种,一种是调用鼠标文件cur、ani文件(cur是静态光标文件,ani是动画光标文件)。

做法,自定义光标文件嵌入dll和调用的方法。把鼠标样式cur文件添加入资源文件(这晓得吧,就是打开项目的property,点击资源,ctrl+v进去),记住在Resources里面选择cur文件,点击属性,修改生成操作为嵌入的资源。(这样做事为了控件封装时候一起封装,如果你是在from中用,那当我没说)

 

代码如下:

                    this.Cursor = new Cursor(GetType(), "Resources.hmove.cur");

 

记住GetType()是为了获得Resources在哪个项目下,如果报错,请检查名字是否正确?是否选定资源为嵌入的资源?

      另外一种是直接把png、jpg图片做为鼠标光标。

 

public void SetCursor(Bitmap cursor, Point hotPoint)

        {

            int hotX = hotPoint.X;

            int hotY = hotPoint.Y;

            Bitmap myNewCursor = new Bitmap(cursor.Width*2 - hotX, cursor.Height*2 - hotY);

            Graphics g = Graphics.FromImage(myNewCursor);

            g.Clear(Color.FromArgb(0, 0, 0, 0));

            g.DrawImage(cursor, cursor.Width - hotX, cursor.Height - hotY, cursor.Width, cursor.Height);

 

            IntPtr iptr = myNewCursor.GetHicon();

            this.FindForm().Cursor = new Cursor(iptr);

 

            g.Dispose();

            myNewCursor.Dispose();

            cursor.Dispose();

}

 

 

 

调用方法 Bitmap a=(Bitmap)Bitmap.FromFile("myCur.png");  

       SetCursor(a, new Point(0, 0));


第二种可以向第一种转换,使用ArtCursors鼠标编辑器,不会用也没关系,只需要导入png,导出cur就成。因为我验证了第二种在调用多次的时候,会出现“GDI+一般性错误”的报错提示。所以最好是调用一次储存Cursor变量是最好的解决办法。切忌反复调用~

分享到:
评论

相关推荐

    UE4_UE5自定义鼠标样式

    在UE4和UE5这两个Unreal Engine版本中,自定义鼠标样式是一项重要的用户界面(UI)定制工作,它能够极大地提升游戏或应用的用户体验。通过自定义鼠标样式,开发者可以根据不同的场景条件,如用户交互、游戏状态等,...

    arcgis for js自定义鼠标样式.zip

    在ArcGIS for JavaScript API中,自定义鼠标样式是一项重要的功能,它允许开发人员根据应用程序的需求改变地图交互时鼠标的外观和行为。ArcGIS for JS API是Esri公司提供的JavaScript库,用于构建地理信息系统(GIS...

    UE4UE5自定义鼠标样式-非积分

    UE4UE5自定义鼠标样式

    Qt自定义鼠标点击样式

    Qt自定义鼠标点击样式。具体详情可看:https://blog.csdn.net/automoblie0/article/details/102981764

    UE4UE5自定义鼠标样式

    UE4UE5自定义鼠标样式

    WPF自定义鼠标形状 自定义鼠标

    这是一个WPF 自定义鼠标形状的例子。 一般我们用.cur或是.ani文件来自定义鼠标,但是这里我用WPF代码自己写一个鼠标形状,不用外部文件。 这样更受代码控制,更具灵活性,减少了文件读取失败的风险,节省了IO资源。

    C# 自定义鼠标样式

    ### C#自定义鼠标样式的实现方法 在C#中,自定义鼠标样式是一个非常实用的功能,尤其是在开发具有高度定制化界面的应用程序时。本文将详细介绍如何通过调用Windows API来实现这一功能,并提供示例代码帮助理解。 #...

    自定义鼠标样式-绿色安装

    本文将深入探讨如何自定义鼠标样式,特别是通过“绿色安装”这一方法来实现。首先,我们需要理解“绿色安装”一词,它通常指的是不修改系统核心文件,只在用户文件夹下进行安装,便于卸载且不会对系统造成影响的安装...

    一个自定义Silverlight鼠标样式代码

    在本文中,我们将深入探讨如何使用Xaml在Silverlight中创建自定义鼠标样式。Silverlight是一种轻量级的Web应用程序框架,它允许开发者构建富媒体和交互式用户体验。自定义鼠标样式是提升用户界面(UI)独特性和用户...

    网页制作鼠标样式 各种样式

    CSS允许开发者自定义鼠标的外观,包括形状、大小和动画效果。基础的鼠标样式设置通常用`cursor`属性完成,例如: ```css selector { cursor: pointer; } ``` 这里的`selector`是你想要改变鼠标样式的元素,`...

    5种超酷自定义鼠标样式特效

    这篇关于“5种超酷自定义鼠标样式特效”的内容,显然旨在介绍如何利用CSS和JavaScript技术来创新性地改变鼠标的视觉效果,使得网页交互更加吸引人。 首先,我们要了解CSS(Cascading Style Sheets)是一种样式表...

    自定义鼠标的样式

    通过学习和理解这些文件,开发者可以进一步掌握自定义鼠标样式的技巧,并将其应用到自己的项目中,提高用户的交互体验。 总的来说,自定义鼠标的样式是一个创新的网页设计手法,它利用HTML、CSS和JavaScript的组合...

    jquery自定义鼠标滚动条样式

    本篇将深入探讨如何利用jQuery实现自定义鼠标滚动条样式的知识点。 首先,我们要明白jQuery的核心是通过选择器选中DOM元素,然后对这些元素进行操作。在自定义滚动条样式时,我们需要借助特定的jQuery插件,如`...

    好看的WPF自定义按钮样式(绝对不亏)

    在本文中,我们将深入探讨如何在Windows Presentation Foundation (WPF) 中创建美观且自定义的按钮样式。WPF是微软提供的一个强大的用户界面框架,它允许开发者通过丰富的图形和动画来构建应用程序。自定义控件样式...

    Android系统添加自定义鼠标样式通过按键切换实例详解

    Android 系统添加自定义鼠标样式通过按键切换实例详解 在 Android 系统中,添加自定义鼠标样式并通过按键切换实例是一种很有趣的技术,能够满足用户的个性化需求。下面,我们将从两个方面来详细介绍如何添加自定义...

    自定义鼠标指针图片

    "自定义鼠标指针图片"这个主题涉及到编程技术,允许开发者根据需求改变鼠标的外观,以提升用户体验或实现特定功能。下面我们将深入探讨如何在编程环境中自定义鼠标指针,并通过一个简单的demo代码进行学习。 首先,...

    VC++自定义鼠标光标的指针样式

    在VC++编程环境中,自定义鼠标光标的指针样式是一项常见的需求,特别是在开发具有独特界面体验的应用程序时。本文将详细讲解如何在Windows/Visual C/C++环境下实现这一功能,同时涉及VC++的MFC(Microsoft ...

    解决C# winForm自定义鼠标样式的两种实现方法详解

    在C# WinForm应用开发中,自定义鼠标样式可以为用户界面增添个性化和专业感。本文将详细解析两种实现自定义鼠标样式的不同方法。 ### 方法一:利用系统API 这种方法涉及对Windows操作系统API的调用,主要是通过`...

    jquery自定义鼠标滚动条样式.rar

    jquery自定义鼠标滚动条样式.rarjquery自定义鼠标滚动条样式.rarjquery自定义鼠标滚动条样式.rarjquery自定义鼠标滚动条样式.rarjquery自定义鼠标滚动条样式.rarjquery自定义鼠标滚动条样式.rar

    自定义表格样式(绿色)

    还可以通过CSS的`:hover`、`:active`和`:focus`伪类添加鼠标悬停、点击和获取焦点时的样式变化,提升用户体验。 8. **JavaScript与jQuery扩展**: 除了静态样式,还可以使用JavaScript或jQuery动态改变表格样式,...

Global site tag (gtag.js) - Google Analytics