C# Winforms - 更改鼠标的光标图标

36

如何将光标图标更改为通常显示在桌面上的“忙碌图标”?我该如何设置动画文件(.gif,.ani)代替光标?


请更正(使其更具体)问题,并将您的两个答案添加到其中。或者"@Carlos Loth"已经给出了正确的答案? - 0x49D1
3个回答

67

尝试执行以下操作:

System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.WaitCursor;

更多信息请参阅Cursors类文档.

Cursor类不支持GIF文件或动画光标(.ANI)。您可以使用以下方法加载自定义光标:

Cursor.Current = new Cursor("C:\\ic.cur");

或许您可以使用类似 Microangelo 的工具将 GIF 文件转换为光标格式。此外,还有一个相关的主题。

如何将 GIF 转换为 CUR 文件?


1
那么,“C:\ic.gif” 应该改为 “C:\ic.cur” 吗? - Thomas Weller

3

我有一个关于picturebox的答案。

Picturebox1.cursor = new cursor(Properties.Resources.CURSOR NAME.GetHicon());

2

还有一种简单的纯C#方法:

System.Windows.Forms.Cursor cursor = null;      
var info = System.Windows.Application.GetResourceStream(
        new Uri(@"pack://application:,,,/Resources/MyCursor.cur"));
cursor = new System.Windows.Forms.Cursor(info.Stream);

在您的项目中,必须将 MyCursor.cur 作为资源包含进来。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接