2014-02-24 24 views
0

我想让游标不可见(只想隐藏一个窗体上的光标,所以Cursor.Hide不是一个选项),我试图设置窗体的方法。使用具有透明背景且没有内容的图标生成的游标光标,但它不起作用。C#Form.Cursor设置不接受透明游标

我假设有一些设置光标像最小像素数或最小尺寸的要求,但我找不到它们,如果有的话。

我的代码:

form.Cursor = new Cursor((new Icon("fake.ico")).Handle); 

fake.ico是什么,但在一个透明背景的一个1x1的图标文件

如何使一个窗体上的光标不可见或将光标设置。一个透明的ico?

+0

项目+添加新项目,光标文件。 –

回答

0

显然使用ICO文件句柄的工作方式不同,从资源加载它,我通过创建一个新的光标( - >添加新项 - 项目>光标)固定我的问题,然后设置我的光标,像这样:

using (System.IO.Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Namespace.Cursor.cur")) 
{ 
    form.Cursor = new Cursor(stream); 
} 

其中的名称空间是您当前的命名空间和光标是我做了透明光标文件的名称。

0
 // The following generates a cursor from an embedded resource. 

     // To add a custom cursor, create a bitmap 
     //  1. Add a new cursor file to your project: 
     //    Project->Add New Item->General->Cursor File 

     // --- To make the custom cursor an embedded resource --- 

     // In Visual Studio: 
     //  1. Select the cursor file in the Solution Explorer 
     //  2. Choose View->Properties. 
     //  3. In the properties window switch "Build Action" to "Embedded Resources" 

这从MSDN使用该采取设置在系统的新光标,然后把它放在表格。 后来继续为你尝试过:

this.Cursor = new Cursor(GetType(), "[you'r cursor name]"); 
+0

是的,我做了我自己的光标文件,它只是不接受它由于某种原因(如果我改变它为一个非透明的工作正常)。 – user1763295

+0

所以基本上当你把它改变成一个不透明的你使用相同格式的图片? – knightsb