visual studio 光标
- 作者: secrets_
- 来源: 51数据库
- 2020-10-02
//1、加载cur光标文件
Cursor = new Cursor(@"E:\Projects\Test01\Test01\myCursor.cur");
//****System .Drawing.Icon f =new Icon (,)
//***f.Handle () 和加载图片类似
//2、加载图片设置为光标
Bitmap bm = (Bitmap)Image.FromFile(@"E:\Projects\Test01\Test01\myPicture.jpg");
Cursor = new Cursor(bm.GetHicon());
//3、加载ani光标文件(另,也可以加载格式为cur和ico的光标文件)
//需要添加一下两个引用:
//using System.Runtime.InteropServices;
//using System.Reflection;
//另:
//[DllImport("user32.dll")]
//public static extern IntPtr LoadCursorFromFile(string fileName);
//[DllImport("user32.dll")]
//public static extern IntPtr SetCursor(IntPtr cursorHandle);
//[DllImport("user32.dll")]
//public static extern uint DestroyCursor(IntPtr cursorHandle);
Cursor myCursor = new Cursor(Cursor.Current.Handle);
IntPtr colorCursorHandle = LoadCursorFromFile(@"E:\Projects\Test01\Test01\myAni.ani");
myCursor.GetType().InvokeMember("handle", BindingFlags.Public |
BindingFlags.NonPublic | BindingFlags.Instance |
BindingFlags.SetField, null, myCursor,
new object[] { colorCursorHandle });
Cursor = myCursor
窗体的load事件里面要加入
this.keypreview = true;
这个后才会生效。
然后在窗体的keydown事件,写要做的事
private void login_keydown(object sender, keyeventargs e)
{
if (e.keydata == keys.f1)
{
messagebox.show("帮助");
}
}
Cursor = new Cursor(@"C:\鼠标.cur");
把"鼠标.cur"拷到C盘,就可以了。
Cursor = new Cursor(@"E:\Projects\Test01\Test01\myCursor.cur");
//****System .Drawing.Icon f =new Icon (,)
//***f.Handle () 和加载图片类似
//2、加载图片设置为光标
Bitmap bm = (Bitmap)Image.FromFile(@"E:\Projects\Test01\Test01\myPicture.jpg");
Cursor = new Cursor(bm.GetHicon());
//3、加载ani光标文件(另,也可以加载格式为cur和ico的光标文件)
//需要添加一下两个引用:
//using System.Runtime.InteropServices;
//using System.Reflection;
//另:
//[DllImport("user32.dll")]
//public static extern IntPtr LoadCursorFromFile(string fileName);
//[DllImport("user32.dll")]
//public static extern IntPtr SetCursor(IntPtr cursorHandle);
//[DllImport("user32.dll")]
//public static extern uint DestroyCursor(IntPtr cursorHandle);
Cursor myCursor = new Cursor(Cursor.Current.Handle);
IntPtr colorCursorHandle = LoadCursorFromFile(@"E:\Projects\Test01\Test01\myAni.ani");
myCursor.GetType().InvokeMember("handle", BindingFlags.Public |
BindingFlags.NonPublic | BindingFlags.Instance |
BindingFlags.SetField, null, myCursor,
new object[] { colorCursorHandle });
Cursor = myCursor
窗体的load事件里面要加入
this.keypreview = true;
这个后才会生效。
然后在窗体的keydown事件,写要做的事
private void login_keydown(object sender, keyeventargs e)
{
if (e.keydata == keys.f1)
{
messagebox.show("帮助");
}
}
Cursor = new Cursor(@"C:\鼠标.cur");
把"鼠标.cur"拷到C盘,就可以了。
推荐阅读