6

好吧,正如标题所说,我怎样才能将图像或其他任何东西设置为鼠标光标。我知道您可以使用 Cursors 类中的内置图像,但我想知道是否有一种方法可以使用您自己的图像(最好没有 P/Invoke,但无论哪种方式都可以。)

编辑:我想我没有足够清楚地解释我想要什么。我没有任何 .cur 文件(它们容易创建吗?),我想知道是否有办法从磁盘(或任何地方)获取图像并将其用作光标。最后,我想做这样的事情:

myForm.Cursor = new Cursor(Image.FromFile("foo.jpg"));

可能的?

4

4 回答 4

8

最简单的是,您只需使用:

form.Cursor = new Cursor(path);

但是有从其他来源(非托管指针、原始流或 resx)加载的重载。

于 2009-01-28T23:00:24.310 回答
3

如果您想了解有关如何创建自己的光标资源的更多信息,那么这里有一个很好的教程。您应该创建光标文件并将其作为资源嵌入到可执行文件中 - 在 Visual Studio 中很容易。这比从单独的文件加载更整洁、更有效。然后,您可以使用带有资源名称的 Cursor 构造函数直接加载它。

于 2009-01-28T23:27:58.950 回答
2

首先将自定义光标添加到您的项目中,然后非常简单:

Cursor myCursor = new Cursor("custom.cur");

然后只需将其分配给您的控件

someControl.cursor = myCursor
于 2009-01-28T22:58:20.337 回答
0

除了上面提到的,你还可以这样做:

Mouse.OverrideCursor = Cursors.Arrow;

光标可以是:AppStarting Arrow ArrowCD Cross Hand Help Pen UpArrow 或其他。

于 2009-08-07T18:30:43.417 回答