windows程序中怎样使用自定义鼠标(含动态鼠标)

原创 2008年09月28日 00:12:00

windows程序中,在窗口类的定义中,WNDCLASS结构体的一个成员

wndcls.hCursor

可以选择不同的鼠标,总结如下:

1.系统光标。

加载系统光标比较简单.

wndcls.hCursor=LoadCursor(NULL,IDC_CROSS);//加载标准的系统光标

 

注意第一个参数必须为NULL,第二个参数可以有不同的选择,更多的参数,查找msdn

 

2.自定义静态光标

自定义静态光标的加载有两种方式:

第一种方式:

使用LoadCursorFromFile函数,

该函数允许你直接从文件中加载,而不必要导入资源.

wndcls.hCursor=LoadCursorFromFile("F://windows 鼠标//静态光标.cur");

 

注意,由于程序调用的时候,会从固定的路径去加载光标,因此要保证每次运行的时候,该光标存在.

 

第二种方法:

ctrl+r 导入资源,选择选择一个你自定义的名字,mycur,导入资源后点击保存,将文件保存为mycur.rc文件,

然后导入该资源文件,系统会自动生成resource.h,导入头文件,在cpp文件前包含头文件#include "resource.h"

wndcls.hCursor=LoadCursor(hInstance,MAKEINTRESOURCE(IDC_CURSOR1));

这个IDC_CURSOR1是默认的光标资源ID,你也可以改变这个ID名

 

3.自定义动态光标

有两种方法:

第一种方法:

直接从文件中加载:

wndcls.hCursor=LoadCursorFromFile("F://windows 鼠标//qq//1852.ani");

1852.ani是我的动态光标.

第二种方法.

先导入资源,导入资源的时候,会弹出一个对话框,要求输入名字类型,顺便输入一个anicur

然后导入,

找到资源文件,就是.rc文件,右键编辑,查找

IDR_ANICUR1  将所在的一行修改如下.

IDR_ANICUR1             CURSOR  DISCARDABLE     "1852.ani"

其实就是将anicur修改为CURSOR。

然后

wndcls.hCursor=LoadCursor(hInstance,MAKEINTRESOURCE(IDR_ANICUR1));

 

 

4.怎样加载ico图标.

加载自定义的ico图标,首先导入资源IDI_ICON1,然后使用函数

 wndcls.hIcon=LoadIcon(hInstance,MAKEINTRESOURCE(IDI_ICON1));

这时有一点需要注意,有可能造成先前设置的动态鼠标不能用,这时候需要手工编辑rc资源,将IDI_ICON1所在的行,以及其下一行#endif,一起放在动态光标的前面,就可以了。

 

搞定了。

 

 

WPF 自定义鼠标指针图片

WPF中自定义鼠标光标图片
  • hjnth
  • hjnth
  • 2017年02月22日 13:25
  • 999

怎样自定义Unity3d项目中的鼠标图标

1、准备好要替换的鼠标图标,导入到Unity3d中。 Ps.导入后纹理类型为Cursor,否则设置之后项目运行时出现黑色方块。 2、在项目Build Settings中的Player Se...
  • ZL_GSYY
  • ZL_GSYY
  • 2017年07月10日 15:23
  • 332

关于windows程序显示鼠标所在坐标

最近在学习windows程序设计,当遇到需要显示鼠标所在坐标时,因为教材都是讲vc6.0的,而在自己的vs上总出现问题。 总体思路时将坐标转换成字符串,再将字符串用TextOutW()输出。其中一个...
  • xl031440308
  • xl031440308
  • 2016年10月15日 14:24
  • 484

java swing 自定义鼠标光标及隐藏光标

自定义光标将以上代码中的图片位置写上,但是光标图标默认是32*32像素,所以图片会因为像素的原因显示模糊,这样效果不好。还有一种方式是将鼠标光标隐藏,然后在鼠标移动坐标处不断的绘图(个人推荐使用)。I...
  • cuiyaoqiang
  • cuiyaoqiang
  • 2015年09月10日 18:33
  • 2411

10.1 图标、鼠标指针、字符串和自定义资源

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P333         使用资源的一个好处是可以把程序的很多组件都绑定到程序的 .EXE 文件中。如果没有资源的概念...
  • u013678930
  • u013678930
  • 2015年11月10日 15:08
  • 987

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

第一种:(调用系统API) 首先引入两个命名空间 using System.Runtime.InteropServices; using System.Reflection; 导入API ...
  • cai_huan_123
  • cai_huan_123
  • 2015年08月06日 12:26
  • 2715

windows编程--动态加载光标和图标

1. 加载光标   注意 加载光标不能发送WM_SETCURSOR 光标的位置不断变化 只在一瞬间有效 case WM_CHAR:     {        HICON hCursor = = Loa...
  • laoyi19861011
  • laoyi19861011
  • 2014年08月17日 11:59
  • 1082

Windows应用程序对键盘与鼠标的响应总结

键盘: 1、键盘上每一个有意义的键都对应着一个唯一的标识值,称为扫描码。2、WINDOWS 系统定义的与设备无关的键的标识,称为虚拟码。虚拟码是;一种与设备无关的键盘编码,它的值存放在键盘消息的wPa...
  • lin_angle
  • lin_angle
  • 2007年09月20日 00:11
  • 2051

windows API:是否使用鼠标

(1)GetInputState 函数原型: BOOL GetInputState(VOID); 函数功能:该函数确定在当前线程的消息队列中是否有要处理的鼠标,键盘消息. 注意事项:返回值指定是...
  • songjianyue12345
  • songjianyue12345
  • 2016年11月01日 09:32
  • 228

如何在CSS中自定义鼠标样式?

解决方案 cursor:url(images/cursor.cur),auto; 注意: 1.IE只支持cur、ani格式,其它浏览器支持png,jpg,ico等格式。 2...
  • mengmakies
  • mengmakies
  • 2016年05月24日 00:00
  • 1126
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:windows程序中怎样使用自定义鼠标(含动态鼠标)
举报原因:
原因补充:

(最多只允许输入30个字)