c# 如何自定义鼠标指针形状?
当光标移到窗体上时让鼠标指针变成十字或圆圈或其它形状,注意我问的是可以自定义任何形状,不是cursor那几个属性...
当光标移到窗体上时让鼠标指针变成十字或圆圈或其它形状,注意我问的是可以自定义任何形状,不是cursor那几个属性
展开
2个回答
展开全部
可以试试以下方式,使用自定义的图片定义鼠标:
SetCursor(任意控件或者窗体, 图片, 指针的热点位置);
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
SetCursor(this, Bitmap.FromFile(Application.StartupPath + "\\a.png"), new Point(0, 0));
}
public static void SetCursor(Control control, Image cursor, Point hotPoint)
{
int hotX = hotPoint.X;
int hotY = hotPoint.Y;
using (cursor)
using (Bitmap myNewCursor = new Bitmap(cursor.Width * 2 - hotX, cursor.Height * 2 - hotY))
using (Graphics g = Graphics.FromImage(myNewCursor))
{
g.Clear(Color.FromArgb(0, 0, 0, 0));
g.DrawImage(cursor, cursor.Width - hotX, cursor.Height - hotY, cursor.Width, cursor.Height);
IntPtr iptr = myNewCursor.GetHicon();
control.Cursor = new Cursor(iptr);
}
}
}
这个方法可以写成一个Control扩展函数,使用的时候就方便了。
展开全部
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询